Ich habe Django gelernt und eine Quelle der Verwirrung, die ich habe, ist mit klassenbasierten Ansichten und wann die Get-Methode zu überschreiben ist. Ich habe mir die Dokumentation durchgelesen und es erklärt, was geht, aber es erklärt nicht, wann ich es außer Kraft setzen soll.Wann überschreiben Sie Methode in Django CBV?
Ich habe ursprünglich einen Blick auf diese Weise:
class ExampleView(generic.ListView):
template_name = 'ppm/ppm.html'
paginate_by = 5
def get(self, request):
profiles_set = EmployeeProfile.objects.all()
context = {
'profiles_set': profiles_set,
'title': 'Employee Profiles'
}
return render(request, self.template_name, context)
Aber ich war vor kurzem gesagt, dass mein Code von genug für die Standardimplementierung einfach war, und dass alles, was ich dies erforderlich war:
class ExampleView(generic.ListView):
model = EmployeeProfile
template_name = 'ppm/ppm.html'
Also meine Frage ist das: In welchem Szenario/Situation sollte ich die Get-Methode überschreiben?
Beachten Sie, dass dieses Beispiel noch erfordert Sie nicht außer Kraft setzen 'get()' - wäre es besser, außer Kraft zu setzen [ 'get_queryset()'] (https://docs.djangoproject.com/en/ 1.9/ref/klassenbasierte Ansichten/mixins-multiple-object/# django.views.generic.list.MultipleObjectMixin.get_queryset). – Alasdair