Хорошо, у меня довольно простой дизайн.
class Update(models.Model):
pub_date = models.DateField()
title = models.CharField(max_length=512)
class Post(models.Model):
update = models.ForeignKey(Update)
body = models.TextField()
order = models.PositiveIntegerField(blank=True)
class Media(models.Model):
post = models.ForeignKey(Post)
thumb = models.ImageField(upload_to='frontpage')
fullImagePath = models.ImageField(upload_to='frontpage')
Есть ли простой способ, позволяющий пользователю создавать обновление на одной странице?
Я хочу, чтобы пользователь мог перейти к интерфейсу администратора, добавить новое обновление, а затем при редактировании обновления добавить одну или несколько сообщений, причем каждое сообщение имеет один или несколько элементов мультимедиа. Кроме того, я хочу, чтобы пользователь мог изменить порядок сообщений в рамках обновления.
Моя текущая попытка имеет следующее в admin.py:
class MediaInline(admin.StackedInline):
model = Media
class PostAdmin(admin.ModelAdmin):
inlines = [MediaInline,]
Это позволит пользователю добавить новый элемент сообщения, выбрать соответствующее обновление, добавить к нему элементы мультимедиа и нажать "Сохранить" - это нормально. Но нет никакого способа увидеть все сообщения, принадлежащие данному обновлению, в одном месте, что, в свою очередь, означает, что вы не можете отправлять сообщения в обновлении. Это действительно запутывает для конечного пользователя.
Справка