Lorsque j'essaie d'utiliser un lien dans mon modèle Django à partir de /appname/index/
pour accéder à /appname/detail/###
, je parviens plutôt à /appname/index/detail/###
, ce qui n'est pas ce que j'essaie d'obtenir afin que mon application ne puisse pas le trouver dans l'urlconf bien sûr.
D'abord la ligne urls.py pour la page de détail
url(r'detail/(?P<jobID>\d+)/$', 'appname.views.detail')
De plus, la racine urlconf
urlpatterns = patterns('',
url(r'^appname/', include('appname.urls')),
url(r'^admin/', include(admin.site.urls)),
)
Suivant le modèle de code essayant d'y arriver
{% for job in jobList %}
<a href="detail/{{ job.id }}/">{{ job.name }}</a>
Je ne sais pas quoi d'autre pourrait être une information applicable, demandez simplement si vous souhaitez voir autre chose. J'ai aussi essayé:
<a href="{% url 'appname.views.detail' %}/{{ job.id }}">{{ job.name }}</a>
Mais cela n'a pas fonctionné non plus. Merci d'avance pour toute aide.
Ajoutez /
au début dans href
:
<a href="/appname/detail/{{ job.id }}/">{{ job.name }}</a>
Et pour que la balise url
fonctionne, procédez comme suit:
<a href="{% url 'appname.views.detail' jobID=job.id %}">{{ job.name }}</a>
D'après mon expérience, tant que vous avez défini l'URL de la page à laquelle la balise href
doit conduire dans urls.py
, incluez le chemin absolu dans le format ci-dessous.
Site name: yyyy.com
Url of page to redirect to in urls.py: yyyy.com/signup/
Sample link: <a href="/signup/">Signup</a>
Vous remarquerez que ce qui se trouve à l'intérieur de la balise href est en quelque sorte ajouté à l'URL actuelle. Pour des liens plus dynamiques, vous pouvez utiliser des instructions python ou DTL.
Bien, cela fonctionne parfaitement, j'ai ajouté <h2><a href="/index.html">Click here to go to Index page</a></h2>
au lieu de <h2><a href="index.html">Click here to go to Index page</a></h2>