在Django管理界面中的嵌套内联?

9 浏览
0 Comments

在Django管理界面中的嵌套内联?

我有一个相当简单的设计。

类Update(models.Model):

pub_date = models.DateField()

title = models.CharField(max_length=512)

类Post(models.Model):

update = models.ForeignKey(Update)

body = models.TextField()

order = models.PositiveIntegerField(blank=True)

类Media(models.Model):

post = models.ForeignKey(Post)

thumb = models.ImageField(upload_to='frontpage')

fullImagePath = models.ImageField(upload_to='frontpage')

有没有一种简单的方法让用户在一个页面上创建一个更新?

我想让用户能够进入管理界面,添加一个新的更新,然后在编辑更新时添加一个或多个帖子,每个帖子都有一个或多个媒体项。此外,我希望用户能够在一个更新中重新排序帖子。

我当前的尝试在admin.py中有以下内容:

类MediaInline(admin.StackedInline):

model = Media

类PostAdmin(admin.ModelAdmin):

inlines = [MediaInline,]

这样,用户可以添加一个新的帖子项,选择相关的更新,将媒体项添加到其中,然后保存-这是可以的。但是没有办法在一个地方看到属于给定更新的所有帖子,这意味着无法对更新中的帖子进行排序。这对最终用户来说真的很困惑。

有办法可以帮助吗?

0