【问题标题】:How to reverse access ManyToManyField of instance of a model如何反向访问模型实例的ManyToManyField
【发布时间】:2014-04-22 20:22:21
【问题描述】:
class User(models.Model):
    username = models.CharField(max_length=30)
    email = models.CharField(max_length=60, primary_key=True)
    registration_date = models.DateField(default=datetime.date.today)


class Task(models.Model):
    author = models.ForeignKey(
        User, on_delete=models.PROTECT,
        related_name="%(app_label)s_%(class)s_author"
    )
    likes = models.ManyToManyField(
        User,
        related_name="%(app_label)s_%(class)s_like"
    )
    dislikes = models.ManyToManyField(
        User,
        related_name="%(app_label)s_%(class)s_dislike"
    )
    subscribed_users = models.ManyToManyField(User)

我想为用户创建一个方法,它返回该用户喜欢或不喜欢的所有任务。我查看了 django orm 的文档,但没有找到如何在给定用户实例的情况下找到他喜欢的所有任务。

【问题讨论】:

    标签: python django python-2.7 django-models


    【解决方案1】:

    你只需要使用related_name,比如:

    some_user.app_label_class_like.all()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-24
      • 1970-01-01
      • 2016-01-16
      • 1970-01-01
      • 1970-01-01
      • 2011-06-27
      相关资源
      最近更新 更多