Come invertire Django URL del feed?
-
25-09-2019 - |
Domanda
Ho cercato per ore per cercare di capire questo fuori, e sembra che nessuno ha mai messo in linea un esempio - che ho appena creato un 1,2 rss Inserisci l'oggetto Django e attaccato ad un URL. Quando visito l'url, tutto funziona alla grande, quindi so che la mia implementazione della classe feed è OK.
L'intoppo è, non riesco a capire come link all'URL nel mio modello. Ho potuto solo codice rigido, ma io preferirei di gran lunga utilizzare {% url%}
Ho provato passando il percorso completo in questo modo:
{% url app_name.lib.feeds.LatestPosts blog_name=name %}
E non ottengo niente. Ho cercato e sembra come tutti gli altri ha una soluzione così evidente che non vale la pena di invio on-line. Ho appena stato troppo a lungo?
Ecco il modello URL relevent:
from app.lib.feeds import LatestPosts
urlpatterns = patterns('app.blog.views',
(r'^rss/(?P<blog_name>[A-Za-z0-9]+)/$', LatestPosts()),
#snip...
)
Grazie per il vostro aiuto.
Soluzione
È possibile un nome al modello URL , che richiede l'uso della funzione di url
helper:
from django.conf.urls.defaults import url, patterns
urlpatterns = patterns('app.blog.views',
url(r'^rss/(?P<blog_name>[A-Za-z0-9]+)/$', LatestPosts(), name='latest-posts'),
#snip...
)
Poi, si può semplicemente utilizzare {% url latest-posts blog_name="myblog" %}
nel modello.