Благодарю Вас за ответ. Если я правильно понял, в случае работы с отношениями многие ко многим нужно передавать объект Book объекту автор, но не так как в случае один ко многим. правильно? Ведь именно так делается в примере из документации или я не правильно понял:
def setUp(self):
11 # Create a couple of Publications.
12 self.p1 = Publication.objects.create(id=None, title='The Python Journal')
13 self.p2 = Publication.objects.create(id=None, title='Science News')
14 self.p3 = Publication.objects.create(id=None, title='Science Weekly')
15 self.p4 = Publication.objects.create(title='Highlights for Children')
16
17 self.a1 = Article.objects.create(id=None, headline='Django lets you build Web apps easily')
18 self.a1.publications.add(self.p1)
19
20 self.a2 = Article.objects.create(id=None, headline='NASA uses Python')
21 self.a2.publications.add(self.p1, self.p2, self.p3, self.p4)
22
23 self.a3 = Article.objects.create(headline='NASA finds intelligent life on Earth')
24 self.a3.publications.add(self.p2)
25
26 self.a4 = Article.objects.create(headline='Oxygen-free diet works wonders')
27 self.a4.publications.add(self.p2)
В примере кода, который я привел выше так не сделать. Ведь в примере из документации отношение задается в момент создания объекта.
Поправьте меня пожалуйста.
Удалось получить некоторые результаты таким способом:
from mysite.models import Publisher, Book, Author
a=Author.objects.create(name='new_auth')
a.save()
p=Publisher.objects.create(name='new')
p.save()
b=Book.objects.create(title='book',publisher=Publisher.objects.get(id=1))
b.save()
b.authors.add(Author.objects.get(id=1))
В правильном направлении я иду?
И еще вопрос, не понял как извлекать данные из таблиз с такой же связью многие ко многим. В чистом sql как-то оно прозрачнее...
Еще раз спасибо за помощь!
Updated 27 Nov. 2011, 5:13 by pal2.