Django 多对多
Django many-to-many
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
如何从模板中的演员对象访问演员的电影?
我需要双向做。
这从电影到演员都适用。
{{movie.actors.all}}
只需将 related_name
放入 actors
字段
actors = models.ManyToManyField(Actor, related_name="actor_movies")
然后在模板中:
{{ actor.actor_movies.all }}
或者如果您不想 related_name
:
模板:
{{ actor.movie_set.all }}
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
如何从模板中的演员对象访问演员的电影?
我需要双向做。
这从电影到演员都适用。
{{movie.actors.all}}
只需将 related_name
放入 actors
字段
actors = models.ManyToManyField(Actor, related_name="actor_movies")
然后在模板中:
{{ actor.actor_movies.all }}
或者如果您不想 related_name
:
模板:
{{ actor.movie_set.all }}