2011-07-09 19 views
1

私はProjectモデルを持っています。 このモデルのDaysのインラインです。DetailViewでインラインを表示するにはどうすればよいですか?

DetailViewを使用して表示するにはどうすればよいですか?

私のviews.pyは、次のようになります。

class ProjectDetailView(DetailView): 
    queryset = Project.objects.all() 
    slug_field = 'slug' 
    template_name = 'projects/detail_project.html' 

私はこれでデイインラインを通じて引っ張る方法を教えてください。

私が試してみた:

def get_context_data(self, **kwargs): 
    context = super(ProjectDetailView, self).get_context_data(**kwargs) 
    project = Project.objects.filter(slug=self.slug_field) 
    context['days'] = Day.objects.filter(project=project) 
    return context 
をしかし、これは動作しません。また、私は一般的なビューを使用していますが、 Daysを引き出すには、とにかく get_object_or_404を実行しています。

これを正しく行うにはどうすればよいですか?

答えて

2

インラインモデルのようなものはありません。親モデルとForeignKey関係を持つモデルのフォームであるインラインフォームがありますが、フォームについては話していないようです。

いずれの場合でも、コード内に何もする必要はありません。関連するモデルは、テンプレートで直接参照できます。

{% for day in object.day_set.all %} 
    {{ day.whatever }} 
{% endfor %} 
関連する問題