にテンプレートレベルでそれ自体に外部キーを持つ辞書を表示するにはどのように私はこのようなmodel.pyありますはジャンゴ
class EventTypeCategory(models.Model):
name = models.CharField(max_length=50, verbose_name="Name")
user = models.ForeignKey(User, verbose_name="User")
Message_slug = models.SlugField(blank=True, verbose_name="Message")
sub_categories = models.ForeignKey('self', verbose_name="Self-Categories", null =True, blank = True)
一方sub_categoriesフィールドは
私が持っている自分自身への外部キーですこのようview.py:
@login_required
def eventcateg_detail(request):
ca = EventTypeCategory.objects.values()
return render_to_response('events/categ.html',{
'obj': ca,
})
CAは以下のように辞書を返し、一方:
0を[{'Message_slug': u'ngcg', 'sub_categories_id': 124L, 'user_id': 1L, 'id': 146L, 'name': u'ngcg'}, {'Message_slug': u'lkn', 'sub_categories_id': 146L, 'user_id': 1L, 'id': 149L, 'name': u'lkn '}]
categ.htmlの各辞書コンテンツから「サブカテゴリ、メッセージ」および「名前」の値を印刷します。 sub_categoriesは "id"(それを指すための外部キー)を返しています。私はジャンゴで初心者ですし、また、同様の質問を見ていたが、それは私のために動作しませんでした:(
データはcateg.htmlで次のように印刷する必要があります。
Message: Name: Sub-categories:
ngcg ngcg (values which refer to foriegn key)
は –
申し訳ありませんが、私はミスを犯しました。単に 'objs'をリストとして使用してください。 – wangeek
また、docによると、values()はselect_relatedを無視し、joinではなく複数のクエリを発生させます。 – okm