我有一个像这样的模型字段
location_state = models.CharField(max_length=255, null=True, blank=True, choices=STATE_CHOICES)
它的值由tastypie返回,但是为了呈现列表框,需要列出所有可用选项。 通过资源公开此类选择的最佳方式是什么?
答案 0 :(得分:1)
由于某种原因,我无法找到一种简单的方法来获取选择,但这样做会有所帮助。
YourModel._meta.get_field('location_state').choices
您应该注意,_meta
是一个内部实现细节,但是依赖于大量的应用程序和扩展,因此它应该相对安全使用。
答案 1 :(得分:1)
我会使用built-in schema通知客户有关字段选项的信息。但是,默认情况下,选项选项不包含在架构资源中。 This thread显示了如何实现这一目标的一种方式。
编辑2013-03-19 :
或者,您可以使用/覆盖ModelResource
中的alter_list_data_to_serialize
方法将您的选择添加到元字段。