2017-05-06 10 views
0

djangoでは、私はPostTagという2つのモデルを持っています。私はManyToManyFieldをそれぞれ別のものに照会しています。ただし、新しいPostを追加していくつかのタグを指定すると、post -> tagの関係のみがデータベースに記録されます。 tag -> postの関係を追加する必要があります。Django多対多関係対称型の違い

自動的にこれを行うための方法はありますか?

+2

でそれを使用するなぜあなたは両方のモデルで多対多のフィールドを定義していますか?それは正しいとは言えません。あなたは1つ(おそらく 'Post'モデル)に定義する必要があり、定義によって関係は両方向に向いています。 – solarissmoke

+1

ああ、私は参照してください。私はtag.post_set.all()を実行して投稿に問い合わせることができないことを認識しませんでした。 – zrbecker

答えて

1

また、の場合、related_nameを使用して参照することもできます。よりクリーンで理解しやすいです。

class Post(models.Model): 
    tag = models.ManyToManyField(Tag, related_name="post") 

は、あなたが tag.post.all()