Django无法导入名称
问题描述:
每当我运行终端服务器时,即使定义了它并将其命名,我总是会得到“无法导入名称”的问题。Django无法导入名称
这里是我的views.py
from django.http import HttpResponse
import datetime
def current_datetime(request):
now = datetime.datetime.now()
html = "<html><body>It is nose %s. </body></html>" % now
return HttpResponse(html)
def hours_ahead(request, offset):
offset = int(offset)
dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
html = "<html><body>In %s hour(s), it will be %s.</body></html>" % (offset, dt)
return HttpResponse(html)
,这里是我的urls.py是应该称它为但得到错误hours_ahead
from django.http import HttpResponse
from django.contrib import admin
from mysite.views import current_datetime, hours_ahead
urlpatterns = patterns('',
(r'^time/$', current_datetime),
(r'^time/plus/(\d{1,2})/$', hours_ahead),
)
答
试试这个。
from django.conf.urls import include, url
from django.contrib import admin
from . import views
urlpatterns = [
url(r'^time/$', views.current_datetime),
url(r'^time/plus/(\d{1,2})/$', views.hours_ahead)
]
如果这不起作用。请将错误堆栈添加到您的问题中。
谢谢,但现在它说模式没有被定义 - 参见:{urlpatterns = patterns('', NameError:name'patterns'is not defined} – Bryn
'patterns'在Django 1.10中被移除如果你正在使用Django 1.8+,将其更改为'urlpatterns = [url(...),...]' – Alasdair
现在它是说url没有被定义从django.http导入HttpResponse 从django.contrib导入管理 从mysite。您可以从.import视图导入current_datetime urlpatterns = [url( (r'^ time/$',views.current_datetime), (r'^ time/plus /(\ d {1,2})/ $ ',views.hours_ahead))] – Bryn