Frage

Ich finde es schwer zu verstehen, was genau die patterns Methode in Django übergeben wird.

Sie sehen, ich habe in der Regel meine urls.py wie:

urlspatterns = patterns('example.views',

    (r'/$','func_to_call'),

)

Dann in func_to_call würde ich alles bekommen, was ich aus dem request Objekt will durch request.path verwenden. Allerdings auf einem zweiten nehmen, es ist wirklich ganz schrecklich, dass ich für eine solche Djangos Schlüpfrigkeit bin ignorieren länger, weniger saubere Art und Weise zu parsen - der Grund ist, ich verstehe nicht, was zu tun ist

Angenommen, Sie haben 3-Server Sie setzen Ihre Django-Anwendung auf, die alle einen Domain-Namen und einige Variationen wie server1/djangoApplicationName/queryparams, server2/application/djangoApplicationName und server3/queryparams haben. Was wird die urlpattern geben bekommen? Die ganze url? Alles, was nach dem Domain-Namen?

War es hilfreich?

Lösung

Die URLconf Regex sieht nur den Pfadabschnitt der URL, mit dem anfänglichen Schrägstrich abgezogen. Abfrageparameter werden nicht durch die URLconf abgestimmt, greifen Sie auf diejenigen, die über request.GET aus Ihrer Sicht. So dass Sie vielleicht ein Muster wie folgt schreiben:

urlpatterns = patterns('myapp.views',
    url(r'^myapp/something/$', 'something_view_func')
)

Die Dokumentation hat weitere Beispiele und Details.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top