【发布时间】:2013-05-31 05:18:42
【问题描述】:
我有两个简单的 Django 模型类,
models.py
from django.db import models
class ParentModel(models.Model):
small_text = models.CharField(max_length=20)
big_text = models.CharField(max_length=500)
def __str__(self):
return self.small_text
class ChildModel(models.Model):
parent = models.ForeignKey(ParentModel)
def __str__(self):
return '%s is my parent' % self.parent
admin.py
from django.contrib import admin
import models
admin.site.register(models.ChildModel)
admin.site.register(models.ParentModel)
因此,默认视图是您在管理部分的选择元素中看到“small_text”。我想做的就是扩展它,以便在选择不同的爸爸时有另一个 TextArea 或其他我可以的东西。
我已经研究了几种不同的方法来做到这一点,但对于 Django,它们似乎都非常复杂,我认为这应该是一件容易的事。有什么想法吗?
【问题讨论】:
-
我认为 ModelAdmin 表单是去这里的方式
-
@Paulo Bu,您有机会对此进行扩展。我在 ModelAdmin 表单上工作得很好,但仍然看不到任何方法来做我想做的事情。
-
@seaders 不管你的 python 版本是什么,Django 都尝试在任何地方使用 unicode,文档和示例都推荐
__unicode__而不是__str__。很抱歉,如果您没有发现这有帮助,但我的 评论(未回答)旨在提供帮助,而不是嘲讽攻击。 -
对不起,我不太明白你想要做什么。是否要更改更改/添加子页面上的选择框选项中的文本?
标签: django django-admin foreign-keys