Mysql SQL是否有Django';s";获取“u FOO”显示();像模拟的?
例如,我的一个模型中有一个字段状态:Mysql SQL是否有Django';s";获取“u FOO”显示();像模拟的?,mysql,sql-server,django,Mysql,Sql Server,Django,例如,我的一个模型中有一个字段状态: CHOICES = ( ('new', u'New'), ('old', u'Old'), ) status = models.CharField(u'Status', max_length=10, choices=CHOICES, default=0) 如果我在SQL中键入:t1.status,我将得到new&old,而不是new&old 而在django中,我可以键入:get_status\u display()来获取New和Old,在
CHOICES = (
('new', u'New'),
('old', u'Old'),
)
status = models.CharField(u'Status', max_length=10, choices=CHOICES, default=0)
如果我在SQL中键入:t1.status
,我将得到new
&old
,而不是new
&old
而在django中,我可以键入:get_status\u display()
来获取New
和Old
,在SQL中如何实现这一点呢?在django中,元组('New',u'New')
正好是两个项的组合
元组的第一个元素将存储在数据库中,它可以是整数,也可以只是一个字符
第二个元素只是一个人类可读的标签,在呈现表单小部件和检索字段表示时使用
SQL查询直接在数据库上执行,其中没有选项映射的信息,选项映射由Django ORM层处理
所以不能使用SQL获取元组的第二个元素
如果您只想使用SQL将输出大写,请参考以下内容