sushi アプリを例にしたdjango manytomany フィールドの例(書きかけ)
sushi アプリを例にしたdjango manytomany フィールドの例
>>> from sushi.models import Tagcloud, Nigiri # 卵をつくります >>> t0=Tagcloud() >>> t0.keyword=u'たまご' >>> t0.save() # 握りを作ります. 先にmanytomany 以外の必須フィールドを作成し、save()します。 >>> n0 = Nigiri() >>> n0.name = u”卵巻き" >>> n0.value = 300 >>> n0.save() # 保存するより前にmanytomany フィールドを追加するとエラー吐きます >>> n1.name='だしまき' >>> n1.tagcloud.add(t0) Traceback (most recent call last): File "<console>", line 1, in <module> File "/Library/Python/2.7/site-packages/django/db/models/fields/related.py", line 827, in __get__ through=self.field.rel.through, File "/Library/Python/2.7/site-packages/django/db/models/fields/related.py", line 524, in __init__ (instance, source_field_name)) ValueError: "<Nigiri: だしまき>" needs to have a value for field "nigiri" before this many-to-many relationship can be used. >>> s1.save() >>> s1.tagcloud.add(t1) # 具材を保存します。 >>> n0.guzai.add(t0) >>> n0.guzai.add(Tagcloud.objects.get(keyword=u"こめ") [ x.keyword for x in Tagcloud.objects.all() if x.keyword in centence ]