2015-04-14 80 views
0

我用django寫博客。 ?我有模型表文章,我想「像」 ​​it.Should創建新表(像這樣)Django鏈接多個表格

class LikeArticleUser(models.Model): 
class Meta: 
    db_table = "likearticleuser" 

user = models.ManyToManyField(User) 
article_id = models.ManyToManyField(Article) 

也許

class LikeArticleUser(models.Model): 
class Meta: 
    db_table = "likearticleuser" 

user = models.ForeignKey(User) 
article_id = models.ForeignKey(Article) 

回答

1

你有兩個選擇:

使用M2M字段中的Article型號:

class Article(models.Model): 
    ... 
    liked_by = models.ManyToManyField(User) 

或者您自己創建中間表(即第在我們的問題E二次片段):這兩個選項

class LikeArticleUser(models.Model): 
    article = models.ForeignKey(Article) 
    user = models.ForeignKey(User) 

SQL表示將以相同的,所以哪個選項你選擇的是口味的問題。