2016-06-28 15 views
1

Ich bin neu in Django und ich versuche nur, Argumente zu Django generische Basis-Ansicht übergeben und es wird nicht im Terminal angezeigt, wie ich die Argumente übergeben werde.Django generische Ansicht akzeptiert keine Argumente

views.py

from django.views.generic import View 
class CartView(View): 
    def get(self, request, *args, **kwargs): 
     item = request.GET.get('item') 
     qty = request.GET.get('qty') 
     print item, qty 
     return HttpResponseRedirect('/') 

urls.py:

urlpatterns = [ 
    url(r'^home/$', 'newsletter.views.home', name='home'), 
    url(r'^contact/$', 'newsletter.views.contact', name='contact'), 
    url(r'^about/$', 'dressika.views.about', name='about'), 
    url(r'^admin/', include(admin.site.urls)), 
    url(r'^accounts/', include('registration.backends.default.urls')), 
    url(r'^', include('products.urls')), 
    url(r'^categories/', include('products.urls_categories')), 
    url(r'^cart/', CartView.as_view(), name='cart'), 

Wenn ich einige Daten in Browser hinzufügen wie "localhost:8000/cart/?item=2&qty=5" ist es nicht die Argumente in Terminal zeigt oben Code nach. Indem ich nur "localhost:8000/cart/" eintippe, leitet es mich zur homepage weiter. Aber mit Argumenten zeigt es 404.

+0

Versuchen: request.GET ['item'] – Jay

Antwort

0

Es klingt wie Sie müssen möglicherweise den Eintrag in urls.py Routing auf die Ansicht zu beheben. Könntest du auch dein urls.py posten?

+0

Ist dies eine Antwort? – trantu

+0

Sorry könnte besser als Kommentar sein, aber ich habe nicht genug Ruf. Zur Verdeutlichung - ich bin mir ziemlich sicher, dass es ein Problem mit urls.py aufgrund des 404 ist, kann aber nicht sicher wissen, ohne die urls.py zu sehen. –

+0

Ich verstand Ihren Punkt .... tatsächlich, als ich meine "Warenkorb" URL unter Konten bewegte, funktionierte es. Was ist die Logik darin? Meine urls.py ist in meiner Frage veröffentlicht. Wie kann ich Einträge in urls.py bestellen und basierend auf was? –

Verwandte Themen