Dan*_*Dan 18 django list foreign-keys filter
Django不支持从list_display或list_filter获取外键值(例如foo__bar).我知道你可以创建一个模块方法作为list_display的解决方法,但是我如何为list_filter做同样的事情呢?谢谢.
小智 28
Django支持带有外键字段的list_filter
# models.py:
class Foo(models.Model):
name = models.CharField(max_length=255)
def __unicode__(self):
return self.name
class Bar(models.Model):
name = models.CharField(max_length=255)
foo = models.ForeignKey(Foo)
# admin.py:
class BarAdmin(admin.ModelAdmin):
list_filter = ('foo__name')
Run Code Online (Sandbox Code Playgroud)
从文档:list_filter中的字段名称也可以使用__查找来跨越关系
Hae*_*aes 12
好吧,文档说你可以使用ForeignKey字段类型list_filter:
http://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_filter
一个例子:
# models.py:
class Foo(models.Model):
name = models.CharField(max_length=255)
def __unicode__(self):
return self.name
class Bar(models.Model):
name = models.CharField(max_length=255)
foo = models.ForeignKey(Foo)
# admin.py:
class BarAdmin(admin.ModelAdmin):
list_filter = ('foo')
Run Code Online (Sandbox Code Playgroud)
如果你想通过相关模型中的字段进行过滤,那么可以使用补丁来实现这项工作(可能会合并到1.2中):
http://code.djangoproject.com/ticket/3400
| 归档时间: |
|
| 查看次数: |
19319 次 |
| 最近记录: |