我想知道可以使用列表作为模型的对象。
我正在开发一个django应用程序,我希望用户能够“喜欢”其他用户,并保留他们喜欢的用户列表,以便我可以在其他页面中呈现它。
那么有类似“listField”的内容吗?
感谢您的帮助。
答案 0 :(得分:2)
绝对是一个多对多的关系是最好的,添加一个through
模型来记录喜欢的创建时间并且能够独立于用户显示它们(如活动流)例如(未经测试)
class MyUser(User):
...
likers = models.ManyToManyField('self', through='Like',
symmetrical=False,
related_name='liked_users')
...
class Like(models.Model):
liker = models.ForeignKey(MyUser, related_name='likes_given')
liked_user = models.ForeignKey(MyUser, related_name='likes_received')
...
您可能会发现此用户http://charlesleifer.com/blog/self-referencing-many-many-through/
答案 1 :(得分:0)