我收到一个导入错误。上面说没有名为HelloTemplate的模块。但是在urls.py文件中导入了一个HelloTemplate类。
“login”是我的django应用程序名。
这是我的views.py文件。
#from django.shortcuts import render
from django.http import HttpResponse
from django.template.loader import get_template
from django.template import Context
from django.shortcuts import render_to_response
from django.views.generic.base import TemplateView
# Create your views here.
def hello(request):
name='Zeeshan'
html="<html><body> hi this is %s.</body></html>" %name
return HttpResponse(html)
def hello_template(request):
name='zeeshan'
t=get_template('hello.html')
html=t.render(Context({'name':name}))
return HttpResponse(html)
class HelloTemplate (TemplateView):
template_name="hello_class.html"
def get_context_data(self, **kwargs):
context=super(HelloTemplate, self).get_context_data(**kwargs)
context["name"] = "zee"
return context
这是url.py文件。。
from django.conf.urls import include, url
from django.contrib import admin
from login.views import HelloTemplate
urlpatterns = [
#url(r'^admin/', include(admin.site.urls)),
url(r'^hello/$', 'login.views.hello'),
url(r'^hello_template/$', 'login.views.hello_template'),
url(r'^hello_class_view/$','HelloTemplate.as_view()'),
]
这是在本地服务器上运行时的错误报告。
ImportError at /hello_class_view/
No module named HelloTemplate
Request Method: GET
Request URL: http://127.0.0.1:8000/hello_class_view/
Django Version: 1.8.4
Exception Type: ImportError
Exception Value:
No module named HelloTemplate
Exception Location: /usr/lib/python2.7/importlib/__init__.py in import_module, line 37
Python Executable: /home/grayhat/Documents/python/projects/bin/python
Python Version: 2.7.6
Python Path:
['/home/grayhat/Documents/python/projects/myapp',
'/home/grayhat/Documents/python/projects/local/lib/python2.7/site-packages/Django-1.8.4-py2.7.egg',
'/home/grayhat/Documents/python/projects/lib/python2.7/site-packages/Django-1.8.4-py2.7.egg',
'/home/grayhat/Documents/python/projects/lib/python2.7',
'/home/grayhat/Documents/python/projects/lib/python2.7/plat-x86_64-linux-gnu',
'/home/grayhat/Documents/python/projects/lib/python2.7/lib-tk',
'/home/grayhat/Documents/python/projects/lib/python2.7/lib-old',
'/home/grayhat/Documents/python/projects/lib/python2.7/lib-dynload',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/home/grayhat/Documents/python/projects/local/lib/python2.7/site-packages',
'/home/grayhat/Documents/python/projects/lib/python2.7/site-packages']
Server time: Mon, 21 Sep 2015 08:06:38 +0000
最佳答案
url.py'HelloTemplate.as_view()'
中的代码片段应该是HelloTemplate.as_view()
。这是,没有引号。您可以看到更多关于引用基于类的视图here。
关于python - 没有名为HelloTemplate导入错误的模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32690488/