Anfängerproblem - Offizielles Startertutorial von django

Django, Flask, Bottle, WSGI, CGI…
Antworten
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

Hallo,

ich habe am Wochenende begonnen mich mit Python und Django zu beschäftigen. Die Installation war recht einfach und danach habe ich mich gleich dem offiziellem Einstiegstutorial (https://docs.djangoproject.com/en/dev/intro/) gewidmet. Heute bin ich fertig geworden,....leider bekomme ich nur noch eine Fehlermeldung, egal welche Seite angezeigt werden soll.

Fehler:

Code: Alles auswählen

Page not found (404)
Request Method:	GET
Request URL:	http://127.0.0.1:8000/polls/1
Using the URLconf defined in Pools.urls, Django tried these URL patterns, in this order:
^$ [name='index']
^(?P<pk>\d+)/$ [name='detail']
^(?P<pk>\d+)/results/$ [name='results']
^(?P<poll_id>\d+)/vote/$ [name='vote']
The current URL, polls/1, didn't match any of these.
urls.py

Code: Alles auswählen

from django.conf.urls import patterns, url
from django.views.generic import DetailView, ListView
from polls.models import Poll


urlpatterns = patterns('',

    url(r'^$',
        ListView.as_view(
            queryset=Poll.objects.order_by('-pub_date')[:5],
            context_object_name='latest_poll_list',
            template_name='polls/index.html'),
        name='index'),
    url(r'^(?P<pk>\d+)/$',
        DetailView.as_view(
            model=Poll,
            template_name='polls/detail.html'),
        name='detail'),
    url(r'^(?P<pk>\d+)/results/$',
        DetailView.as_view(
            model=Poll,
            template_name='polls/results.html'),
        name='results'),
    url(r'^(?P<poll_id>\d+)/vote/$', 'polls.views.vote', name='vote'),
    
    
)
Danke für Tipps
Peter
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Die Fehlermeldung beschreibt es doch ganz gut. Die von dir eingegebene URL existiert in der Form nicht.

Kann es sein, das /polls/1 eigentlich vom Admin Bereich stammt? Also evtl.: /admin/polls/1 sein sollte?
Hast du den Admin Bereich aktiviert? Siehe: https://docs.djangoproject.com/en/1.4/r ... rib/admin/

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

Meines Verständnisses nach sollte es

localhost/polls
localhost/admin

sein. :-/
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

Wenn ich 127.0.0.1:8000 aufrufe bekomme ich den Fehler:

Code: Alles auswählen

NoReverseMatch at /
u"'polls" is not a registered namespace
Request Method:	GET
Request URL:	http://127.0.0.1:8000/
Django Version:	1.4.1
Exception Type:	NoReverseMatch
Exception Value:	
u"'polls" is not a registered namespace
Exception Location:	C:\Python27\lib\site-packages\django\template\defaulttags.py in render, line 424
Python Executable:	C:\Python27\python.exe
Python Version:	2.7.3
Python Path:	
['C:\\Dokumente und Einstellungen\\xyz\\workspace\\Pools\\src',
 'C:\\Dokumente und Einstellungen\\xyz\\workspace\\Pools\\src',
 'C:\\Python27\\DLLs',
 'C:\\Python27\\lib',
 'C:\\Python27\\lib\\plat-win',
 'C:\\Python27\\lib\\lib-tk',
 'C:\\Python27',
 'C:\\Python27\\lib\\site-packages',
 'C:\\WINDOWS\\system32\\python27.zip']
Server time:	Di, 16 Okt 2012 11:19:10 +0200
und weiter:

Code: Alles auswählen

u"'polls" is not a registered namespace
1	{% if latest_poll_list %}
2	    <ul>
3	    {% for poll in latest_poll_list %}
4	        <li><a href="{% url 'polls:detail' poll.id %}">{{ poll.question }}</a></li>   <<--die Zeile scheint ein Problem zu haben
5	    {% endfor %}
6	    </ul>
7	{% else %}
8	    <p>No polls are available.</p>
9	{% endif %}
Wo wird denn der Namespace festgelegt? Hab ich was überlesen?
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:


GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

djangofish hat geschrieben:Meines Verständnisses nach sollte es

localhost/polls
localhost/admin

sein. :-/
Dann verstehst du falsch. Der FQDN des Servers wird nicht geparst. Das würde ja auch eine Integration in ein anderes Projekt übermäßig kompliziert machen.
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

dacht ich mir schon irgendwie. Eine Frage noch.

kann es für jede App eine urls.py geben? Wenn dann liegt es wohl daran, dass ich immer in der für das ganze Projekt bestimmte, rumgewurschtelt habe.
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

djangofish hat geschrieben:kann es für jede App eine urls.py geben?
Ja, wenn du die dann aus der ROOT_URLCONF inkludierst werden sie auch verwendet ;)
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

djangofish hat geschrieben:kann es für jede App eine urls.py geben?
Ja. Lies mal Including other URLconfs.
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

Das mit den App-spezifischen urls-Dateien hab ich per Ausprobieren raus gefunden. :)
Bastel jetzt mal eine Demo-Seite und gucke was ich bei Problemen im Internet finde. Irgendwie stehe ich mit Tutorials immer auf Kriegsfuß.

Vielen Dank für die Tipps
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Und übrigens schreibst du einmal Polls (Umfragen) und einmal Pools (Swimming-Pools etwa?), da ist es dann auch kein Wunder, dass Django das nicht finden kann wenns verschieden heißt.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten