2017-05-11 17 views
0

私のDjango 1.11ブログアプリでは、authorspostsの多対多の関係があります。既存のレコードと多対多関係を作成するにはどうすればよいですか?

# models.py 

class Post(models.Model): 
    title = models.CharField(max_length=200) 


class Author(models.Model): 
    name = models.CharField(max_length=200) 
    posts = models.ManyToManyField(Post, related_name='authors') 

次のように私は、著者と記事を作成することができます。

$ post = Post.objects.create(title='My post') 
$ post.authors.create(name='John Doe') 

をしかし、どのように、私は明示的にポスト及び著者を作成し、協会を介してそれらを接続することができますか?

$ post = Post.objects.create(title='My post') 
$ author = Author.create(name='John Doe') 
$ post.authors.????(author) 

私はそれは私が欲しいものではありません新しい著者を作成することになりpost.authors.get_or_create(name='John Doe')を呼び出した場合。

私は別のモデル(PostAuthor)にすることで直接結合テーブルにアクセスできましたが、既存の著者をQuerySet API経由で投稿に接続する方法はありますか?

答えて

1

これを試してみてください:

post.authors.add(author) 
関連する問題