加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Django多对多

发布时间:2020-12-20 11:48:39 所属栏目:Python 来源:网络整理
导读:class Actor(models.Model): name = models.CharField(max_length=50) def __str__(self): return self.nameclass Movie(models.Model): title = models.CharField(max_length=50) actors = models.ManyToManyField(Actor) def __str__(self): return self.t
class Actor(models.Model):
    name = models.CharField(max_length=50)

    def __str__(self):
      return self.name


class Movie(models.Model):
    title = models.CharField(max_length=50)
    actors = models.ManyToManyField(Actor)

    def __str__(self):
       return self.title

如何从模板中的Actor对象访问actor的电影?

我需要在两个方向上做到这一点.

这从电影到演员都有效.

{{movie.actors.all}}

解决方法

只需将related_name放入actors字段即可

actors = models.ManyToManyField(Actor,related_name="actor_movies")

然后在模板中:

{{ actor.actor_movies.all }}

或者如果你不想要related_name:

模板:

{{ actor.movie_set.all }}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读