我正在尝试在管理员中创建一个选择框,在当前应用程序之外显示数据库中的对象列表。这是我的模特
from typefaces.models import Typeface
class Word(models.Model):
text = models.CharField(max_length=200)
family_select = models.CharField(max_length=100, choices=Typeface.objects.all)
不幸的是,Django告诉我'choices' must be an iterable (e.g., a list or tuple).
但是我试图用iter()
进行迭代却没有成功。
答案 0 :(得分:1)
这是一种完全错误的方法。应使用OneToOneFields,ForeignKeys(一对多字段)和ManyToManyFields指定模型之间的关系。您应该将CharField更改为:
family = models.ForeginKey(Typeface, related_name='words')
如果您有特殊原因不使用普遍接受的方式,请进一步详细说明,以获得答案。