我有以下代碼。我試圖在URL中傳遞一個名爲'sort'和'sch'的get變量,但是當我打印self.kwargs時,它將返回null。如果有人能指出我正確的方向,將不勝感激!獲取變量在Self.Kwargs中不可用
Views.py - ToolList
class ToolList(SearchableListMixin, SortableListMixin, ListView):
model = ToolCalibration
template_name = 'tool_cal/list.html'
paginate_by = 10
context_object_name = 'tools'
search_fields = ['description', 'notes', 'tolerance_notes']
sort_fields_aliases = [
('description', 'by_description'),
('last_certified', 'by_last_certified'),
('due_date', 'by_due_date'),
('tool_status', 'by_tool_status'),
]
def get_queryset(self, **kwargs):
qs = super(ToolList, self).get_queryset()
print(self.kwargs)
sort = 'due_date'
### PROBLEM IS HERE. FOR SOME REASON KWARGS ISN'T GRABBING GET VARIABLES ###
if 'sort' in self.kwargs:
sort = self.kwargs['sort']
try:
schema = self.kwargs['sch']
print 'Context using %s' % schema
return qs.filter(schema__abbrev=schema).order_by(sort)
except:
print 'Context contains no schema'
return qs.order_by(sort)
def get_context_data(self, **kwargs):
context = super(ToolList, self).get_context_data(**kwargs)
context['enterprise'] = EnterpriseSchema.objects.all()
return context
正是我一直在尋找!謝謝! – Greg