[英]named urls of the form {%url 'somenamedurl' %} in django not working
之前名為url的工作,我放了另一個django項目並安裝了幾個像pyjasper等軟件包。我的壞我沒有做virtualenv。
現在另一個項目並不重要。 我使用的當前版本的django是1.6.2。 我無法追蹤錯誤。
它說錯誤渲染
SyntaxError at /dashboard/
invalid syntax (views.py, line 7)
模板渲染期間出錯在模板D:\\ djangoprojects \\ prmanager \\ templates \\ menu.html中,第3行出錯
1 {% load static %}
2 <li class="active">
3 <a href="{% url 'dashboard' %}">
4 <i class="fa fa-dashboard"></i> <span>Dashboard</span>
5 </a>
6 </li>
7
8 <li class="treeview">
9 <a href="#">
10 <i class="fa fa-folder"></i> <span>Work Orders</span>
11 <i class="fa fa-angle-left pull-right"></i>
12 </a>
13 <ul class="treeview-menu">
請注意第3行。我嘗試用引號命名它們而不使用引號。
無法找到它所談論的views.py。 因為在儀表板應用中,views.py中沒有第7行
有人可以在哪里尋找bug。 如果此信息不充分,請告訴我,我會發布相同的信息。
我所知道的是,之前的工作是什么,停止了工作。
編輯urls.py
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'prmanager.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),
url(r'^dashboard/', include('dashboard.urls')),
url(r'^materials/', include('materials.urls')),
url(r'^suppliers/', include('suppliers.urls')),
url(r'^purchaserequest/', include('purchaserequest.urls')),
url(r'^purchaseorder/', include('purchaseorder.urls'), name="purchaseorder"),
url(r'^admin/', include(admin.site.urls)),
url(r'^getSuppliersJson/', 'commontools.tools.getSuppliersJson', name="getSuppliersJson"),
url(r'^getPOJson/', 'commontools.tools.getPOJson', name="getPOJson"),
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
儀表板應用程序的urls.py
from django.conf.urls import patterns, url
urlpatterns = patterns('dashboard.views',
url(r'^$', 'dashboard', name="dashboard"),
#url(r'^newpurchaserequest/', 'newpurchaserequest', name="newpurchaserequest"),
)
你已經放錯了,
SyntaxError at /dashboard/
invalid syntax (views.py, line 7)
所以問題出在第7行的views.py文件中。
更新:
你包括儀表板urls.py,但同時你使用$
。 它不匹配下一個子模式。
是的,現在問題在這里url(r'^dashboard/$', include('dashboard.urls')),
使用這個url(r'^dashboard/', include('dashboard.urls')),
應用程序配置是這樣的,
在root urls.py中:
urlpatterns = patterns('',
url(r'^dashboard/', include('dashboard.urls')),
)
在儀表板應用中:
在urls.py中:
urlpatterns = patterns('dashboard.views',
url(r'^$', 'dashboard', name="dashboard"),
)
在views.py中:
def dashboard(request):
context = {}
return render(request, 'dashboard/dashboard.html', context)
您應該使用以下語法:
{% url 'dashboard' as dashboard_url %}
<a href="{{ dashboard_url }}">Link</a>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.