ManyToManyの引き方
もうほぼメモ。
これくらい探せばすぐ見つかるけど。
このようなrelationのモデルの場合
models.py
class Tag(models.Model): name = models.CharField(maxlength=200) class Admin: list_display = ('name',) def __repr__(self): return self.name class Entry(models.Model): pub_date = models.DateTimeField('date published', auto_now_add=True) title = models.CharField(maxlength=200) body = models.TextField() tags = models.ManyToManyField(Tag) class META: ordering = ('-pub_date',) get_latest_by = 'pub_date' class Admin: list_display = ('title','pub_date') def __repr__(self): return self.title
あるTagにひもついているEntryを引っ張りたいって事が往々にしてある。
で引き方
Tagの場合
Tag.objects.filter(name=tag).get().entry_set.all()
もちろん"get()"つかっているので一意にならないとアウトです。
うくく。