0
この質問の優れた説明は、 Dynamically filter ListView CBV in Django 1.7です。Djangoの動的フィルタリングとデフォルトのクエリーセット
しかし、私はクエリーセットで余分な助けを得ることはできませんでした。
# urls.py
urlpatterns = patterns('',
url(r'^(?P<exp>[ASG])$', \
ScholarshipDirectoryView.as_view(),\
name='scholarship_directory'),)
# views.py
class ScholarshipDirectoryView(ListView):
queryset= Scholarship.objects.all()
model = Scholarship
template_name = 'scholarship-directory.html'
def get_queryset(self):
qs = super(ScholarshipDirectoryView, self).get_queryset()
return qs.filter(experience_level__exact=self.kwargs['exp'])
URLに「exp」パラメータがない場合の標準クエリーセットにフォールバックするDRY方法は何ですか?
私は、完全なQuerysetとCustom/Filer Querysetの追加のビューや追加のURLパターンは意味をなさないと考えているので、このアプローチを採用したいと思います。
はい、私は知っていますが、ドライですか? @ダニエル・ローズマン – villancikos
何が繰り返されていますか? –
あなたは正しいです。何も繰り返されていません。私はそれが動作するようになっていないが。それは完全なqsを返します。 – villancikos