在Django页面上显示ManyToManyField

时间:2019-05-02 00:53:11

标签: python django django-1.9

我正在尝试在Django上创建一个博客,该博客可以添加一个或多个事件并列出它们,这些博客文章可以在Django上发布。例如: 博客文章A具有Event1和Event2 博客文章B具有事件1和事件3

我苦苦挣扎的主要领域是使此代码实际显示在页面上。我尝试过多种方法。数据显示在admin +数据库中,而不显示在前端页面上

在模型上,我显示以下内容

class Event(models.Model):
    eventname = models.CharField(max_length=150)
    location = models.CharField(max_length=150)
    eventdate = models.DateField(blank=False)
    eventlink = models.URLField(max_length=800)

class Post(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1)
    title = models.CharField(max_length=120)
    slug = models.SlugField(unique=True)
    image = models.ImageField(upload_to=upload_location,
                              null=True,
                              blank=True,
                              width_field="width_field",
                              height_field="height_field")
    height_field = models.IntegerField(default=0)
    width_field = models.IntegerField(default=0)
    content = models.TextField()
    draft = models.BooleanField(default=False)
    publish = models.DateField(auto_now=False, auto_now_add=False)
    updated = models.DateTimeField(auto_now=True, auto_now_add=False)
    timestamp = models.DateTimeField(auto_now=False, auto_now_add=True)
    eventlist = models.ManyToManyField(Event)

在HTML上,我显示以下内容

<h3> {{ post.eventlist.eventname }} </h3>

我希望输出在页面上显示“事件名称”字段

0 个答案:

没有答案