У меня есть проект в django 1.8, и я хочу извлечь поле date_start
чтобы получить год, а затем создать диапазон в каком году произойдет событие. Затем передайте все в SelectDateWidget
в форме:
date_start = forms.DateField(widget=SelectDateWidget(years=range(1980, 2018)))
Но я понял: too many values to unpack (expected 2)
Вот проблематичная часть моего кода:
context['years'] = models.Booking.objects.filter('date_start')
Вот код из моего представления:
class BookingListView(ListView, FormView):
model = models.Booking
form_class = BookingForm
queryset = models.Booking.objects.order_by('-date_start')
paginate_by = 80
template_name = 'events/archive_list.html'
context_object_name = 'object_list'
date_field = 'date_start'
allow_future = True
def get_context_data(self, **kwargs):
context = super(BookingListView, self).get_context_data(**kwargs)
context['mode'] = 'archive'
context['form'] = BookingForm()
context['years'] = models.Booking.objects.filter('date_start')
print(context['years'])
return context
Вы используете строку "date_start"
вместо переменной date_start
. Измените свой код на это, и он должен работать.
context['years'] = models.Booking.objects.filter(date_start)
.filter
?