我的 urls.py 怎么了?
What's wrong with my urls.py?
我正在尝试 Django 1.11,但遇到了问题:
这是我的文件 agora/agora/urls.py :
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^start/', include('start.urls', namespace='start')),
]
这是我的文件 agora/start/urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', view_first, name='view_first'),
url(r'^/inscription', view_second, name='view_second'),
url(r'^/about', view_about, name='view_about'),
]
Django 服务器 return 一个错误:
NameError: 名称 'view_first' 未定义
非常感谢您的回答!
你应该对所有功能都这样做
views.view_first
views.view_second
....
您必须在 import
语句中指定函数名称
from django.conf.urls import url
from .views import view_first, view_second, view_about
urlpatterns = [
url(r'^$', view_first, name='view_first'),
url(r'^/inscription', view_second, name='view_second'),
url(r'^/about', view_about, name='view_about'),
]
或导入视图并使用 view.
分配每个函数
from django.conf.urls import url
from . import view
urlpatterns = [
url(r'^$', view.view_first, name='view_first'),
url(r'^/inscription', view.view_second, name='view_second'),
url(r'^/about', view.view_about, name='view_about'),
]
虽然问题已经回答了,但我确实注意到了一个小错误。
写url时,始终建议在端点末尾添加“$”符号。不添加相同的可能会导致相似的 url 重叠,这可能会混淆应用程序的行为,甚至会导致一些严重的错误。
美元符号标记 url 字符串的结尾。
请注意!!
我正在尝试 Django 1.11,但遇到了问题:
这是我的文件 agora/agora/urls.py :
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^start/', include('start.urls', namespace='start')),
]
这是我的文件 agora/start/urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', view_first, name='view_first'),
url(r'^/inscription', view_second, name='view_second'),
url(r'^/about', view_about, name='view_about'),
]
Django 服务器 return 一个错误:
NameError: 名称 'view_first' 未定义
非常感谢您的回答!
你应该对所有功能都这样做
views.view_first
views.view_second
....
您必须在 import
语句中指定函数名称
from django.conf.urls import url
from .views import view_first, view_second, view_about
urlpatterns = [
url(r'^$', view_first, name='view_first'),
url(r'^/inscription', view_second, name='view_second'),
url(r'^/about', view_about, name='view_about'),
]
或导入视图并使用 view.
from django.conf.urls import url
from . import view
urlpatterns = [
url(r'^$', view.view_first, name='view_first'),
url(r'^/inscription', view.view_second, name='view_second'),
url(r'^/about', view.view_about, name='view_about'),
]
虽然问题已经回答了,但我确实注意到了一个小错误。
写url时,始终建议在端点末尾添加“$”符号。不添加相同的可能会导致相似的 url 重叠,这可能会混淆应用程序的行为,甚至会导致一些严重的错误。 美元符号标记 url 字符串的结尾。
请注意!!