【发布时间】:2020-03-29 19:31:16
【问题描述】:
您好,如果我在选择列表 django 工作中进行选择,那么它的所有代码都是我的代码,但我希望在提交选择后不会更改。 提交第一选择后再次看到。
我的表格
class PostSorguForm(forms.Form):
HIKAYE_CHOICES=(('1','En Son Çıkanlar'),('2','En Çok Okunanlar'))
sorgu_form = forms.ChoiceField(choices=HIKAYE_CHOICES,required=False)
我的看法
class ArticleListView(FormMixin,ListView):
context_object_name = 'articles'
template_name = 'includes/article/article-list.html'
paginate_by = 15
form_class= PostSorguForm
def get_queryset(self):
queryset = Article.objects.all()
if self.request.GET.get("sorgu_form"):
selection = self.request.GET.get("sorgu_form")
if selection == "2":
queryset = Article.objects.all().order_by('-hit_count_generic__hits')
else:
queryset=Article.objects.filter(published=True).order_by('created_date').reverse()
return queryset
我的模板
<form method="GET" action="">
<div class="form-group">
<select class="form-control" name="sorgu_form" id="id_sorgu_form" onchange="this.form.submit()">
{% for x,y in form.fields.sorgu_form.choices %}
<option value="{{x}}">{{y}}</option>
{% endfor %}
</select>
</div>
</form>
我想在选择查询选项后
【问题讨论】: