簡體   English   中英

django中{%url'somenamedurl'%}形式的命名網址無法正常工作

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM