Django - 表单中的外部字段需要 get_FOO_display
Posted
技术标签:
【中文标题】Django - 表单中的外部字段需要 get_FOO_display【英文标题】:Django - need a get_FOO_display for a foreign field in a form 【发布时间】:2011-10-27 08:33:24 【问题描述】:我有一个表单模板,我将表单信息以及对象本身传递给该模板。我可以在选择字段是对象本身的一部分时使用 object.get_FOO_display
no问题
我将其构建到基于类的视图中,因此理想情况下,任何建议都可以独立于对特定字段的引用进行编码。
谢谢!
【问题讨论】:
当您在模板中包含 object.FOO
(其中'FOO' 是外部字段)时,它会为您提供FOO 的__unicode__() 返回值。这还不够吗?
看看这个解决方案: ***.com/a/7571539/497056
【参考方案1】:
如果我没记错的话,并且您正在尝试获取具有选择属性的 django 模型实例的显示值,您可以简单地:
object.foreign_key_field.get_FOO_display
但是,如果您正在向后工作(即尝试获取具有指向您的对象实例模型的外键和 fk_related_name 的相关名称属性的模型实例的显示值),那么:
object.fk_related_name.get_query_set()[i].get_FOO_display
get_query_set 返回一个查询集,因此您可以使用 % forloop % 遍历查询集或提供所需对象的索引 [i],如上所述。
如果这些都不起作用并且您仍然不确定,请发布对象实例模型和foreign_key 模型。
【讨论】:
object.foreign_key_field.get_FOO_display 不适用于 Django 1.8.1以上是关于Django - 表单中的外部字段需要 get_FOO_display的主要内容,如果未能解决你的问题,请参考以下文章