【发布时间】:2013-10-23 05:27:45
【问题描述】:
我正在制作一个网页游戏,其中每个世界都可以成为一个联盟的一部分。
class World(models.Model):
# rest of Model
alliance = models.ForeignKey('Alliance', related_name='allmember', default=None, blank=True, null=True)
officer = models.NullBooleanField()
leader = models.NullBooleanField()
class Alliance(models.Model):
allianceid = models.AutoField(primary_key=True)
alliance_name = models.CharField(max_length=20, unique=True)
alliance_desc = models.TextField(max_length=200)
我收集到使用内联,我可以在联盟页面上显示联盟的成员。但是,我只能编辑官员和领导状态,而我也希望能够编辑成员身份。这是我正在使用的内联。
class MemberInline(admin.TabularInline):
model = World
fk_name = 'alliance'
# excludes
class AllianceAdmin(admin.ModelAdmin):
inlines = [
MemberInline,
]
我想我真正想问的是我是否可以从目标模型而不是发起者编辑管理站点中的外键关系。
【问题讨论】:
-
什么会员资格?
-
我希望能够从联盟页面编辑一个世界是否在联盟中。
-
但是您已经可以这样做了 - 世界管理员表单上会自动出现
alliance的下拉菜单。 -
没错,但就像我说的,我希望能够从 Alliance 管理表单中编辑它。毕竟,如果我正在管理一个联盟的成员,我可以从联盟表格中执行此操作,而不是必须转到每个单独的成员表格。
-
@heidi 也许这有帮助stackoverflow.com/a/42374899/767834
标签: django django-models django-admin foreign-key-relationship