好吧,所以我最近开始使用Django(和Python),所以我是一个假人。在
以下是我的模型(以下所有内容都在同一个应用程序中):
class Menulizable(models.Model):
pass
class Category(Menulizable):
slug = models.SlugField(max_length=155)
name = models.CharField(max_length=155)
short_description = models.TextField(null=True, blank=True)
...
def __str__(self):
return self.name
class Article(Menulizable):
slug = models.SlugField(max_length=150)
title = models.CharField(max_length=155)
content = models.TextField(null=True)
...
def __str__(self):
return self.title
class News(Article):
author = models.ForeignKey(to=User, related_name="written_news")
...
class Page(Article):
author = models.ForeignKey(to=User, related_name="pages")
...
class Menu(models.Model):
slug = models.SlugField(max_length=155)
name = models.CharField(max_length=155)
items = models.ManyToManyField(Menulizable, related_name='in_lists', through='MenuOrder')
...
class MenuOrder(models.Model):
position = models.PositiveIntegerField()
gl = models.ForeignKey(Menu)
gi = models.ForeignKey(Menulizable, related_name="menu_orders")
...
我的目标是(在管理面板/管理)管理菜单,我们可以在其中存储一组有序的对象,这些对象可以是Category、News或Page或其他对象(来自Menulizable的子类)。在
我的管理员:
^{pr2}$请注意,这似乎可以很好地工作,这允许管理菜单,我们可以在其中设置可菜单化对象的有序列表。在
问题是:
The str shown is the one of Menulizable instances and not the one of its child
我希望它出现在这个列表中,至少是文章、类别实例的str,而不是可菜单化的伪抽象实例的str。在
有人要帮忙吗?我明白了还是一团糟?在
谢谢:)
目前没有回答
相关问题 更多 >
编程相关推荐