2017-02-07 10 views
0

最近、私はプログラミングを学び始めて、問題を解決できません。私は何かが間違っていることを知っている、誰でも私を助けることができます。 私はvipuskにforeingkeyによって接続された記事モデルを持っています。 vipuskが外部キーによってYearモデルに接続されている場所。すべての上に、年モデルがあります。sqliteデータベースからデータを取得する際の問題点djangoプロジェクト

私は自分のデータベースにいくつかの記事を作成しました。ランダムな量のvipusksと何年かの年を作成しました。 私はdatabeseから直接取得しようとしているときに、私はそれらのうちのいくつかだけを持っている、つまり、1年にはvipusksのカップルが含まれていることを意味し、vipusksの数を表示しようとすると、しかし、私は1年のうちの1つに4人のヴァパルクがいることを知っています。私は問題がどこかにあると思う。私はこれは私のvievフィールドでそれを修正する方法を

を知らない:

def arkchive(request): 
    latest_year = YearPub.objects.all().order_by('year_alias') 
    for i in latest_year: 
     latest_vipusks = Vipusk.objects.filter(vipusk_year=latest_year).order_by('id') 
     for j in latest_vipusks: 
      articles = Article.objects.filter(article_vipusk=latest_vipusks).order_by('id') 

    args = {} 
    args['years'] = latest_year 
    args['vipusks'] = latest_vipusks 
    args['articles'] = articles 
    return render_to_response('arkchive.html', args)enter code here 

、ここでは、私は私のテンプレートで

{% for year in years %} 
    {{year.yearpub_int}} 
    {% for vipusk in vipusks %} 
     <a class='title_vipusk'>{{vipusk.vipusk_int}}</a> 
     {% for article in articles %} 
      <a class='title_article'>{{article.vipusk_name}}</a> 
     {% endfor%} 
    {% endfor %} 
{% endfor %} 

答えて

0

を取得しようとしています何で私が何を推測します「を実行しようとして再度このようなものです:

def arkchive(request): 
    years = {} 
    for year in YearPub.objects.all().order_by('year_alias'): 
     years[year.yearpub_int] = {} 
     for vipusk in Vipusk.objects.filter(vipusk_year=year).order_by('id'): 
      years[year.yearpub_int][vipusk_int] = Article.objects.filter(article_vipusk=latest_vipusks).order_by('id') 

    return render_to_response('arkchive.html', {'years': years})enter code here 

テンプレート:

{% for year, vipusks in years.items %} 
    {{year}} 
    {% for vipusk, articles in vipusks.items %} 
     <a class='title_vipusk'>{{vipusk}}</a> 
     {% for article in articles %} 
      <a class='title_article'>{{article.vipusk_name}}</a> 
     {% endfor%} 
    {% endfor %} 
{% endfor %} 
+0

ありがとうございます。それはまさに私が何を意味していたのか – Fla

関連する問題