python - ¿Cómo puedo satisfacer una importación de direct_to_template?
django social-networking (2)
Además de la vista basada en clase TemplateView
, también puede usar la función de render
esta manera:
from django.shortcuts import render
urlpatterns = patterns("",
url(r''^$'', lambda request: render(request, ''homepage.html''), name="home"),
)
Recibo una página de error de un proyecto originalmente Pinax 0.7:
ImportError at /
No module named simple
Request Method: GET
Request URL: http://stornge.com:8000/
Django Version: 1.5
Exception Type: ImportError
Exception Value:
No module named simple
Exception Location: /home/jonathan/clay/../clay/urls.py in <module>, line 3
Python Executable: /home/jonathan/virtual_environment/bin/python
Python Version: 2.7.3
Python Path:
[''/home/jonathan/clay/apps'',
''/home/jonathan/virtual_environment/local/lib/python2.7/site-packages/pinax/apps'',
''/home/jonathan/clay'',
''/home/jonathan/virtual_environment/local/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg'',
''/home/jonathan/virtual_environment/local/lib/python2.7/site-packages/pip-1.1-py2.7.egg'',
''/home/jonathan/virtual_environment/lib/python2.7'',
''/home/jonathan/virtual_environment/lib/python2.7/plat-linux2'',
''/home/jonathan/virtual_environment/lib/python2.7/lib-tk'',
''/home/jonathan/virtual_environment/lib/python2.7/lib-old'',
''/home/jonathan/virtual_environment/lib/python2.7/lib-dynload'',
''/usr/lib/python2.7'',
''/usr/lib/python2.7/plat-linux2'',
''/usr/lib/python2.7/lib-tk'',
''/home/jonathan/virtual_environment/local/lib/python2.7/site-packages'',
''/home/jonathan/virtual_environment/local/lib/python2.7/site-packages/PIL'']
Server time: Mon, 25 Mar 2013 13:16:33 -0400
La línea en la que se está quedando callada, urls.py:3, es:
from django.views.generic.simple import direct_to_template
¿Cómo puedo cambiar la importación o el área donde se usa?
urlpatterns = patterns('''',
url(r''^$'', direct_to_template, {
"template": "homepage.html",
}, name="home"),
Parece que puedo crear una vista que hace un render_to_response () en la página de inicio, pero me gustaría saber cómo debería resolverlo y recurrir a eso si nadie me dice una mejor manera.
direct_to_template
ha quedado en desuso. En django 1.5 intente usar una vista basada en urls.py
en urls.py
from django.views.generic import TemplateView
urlpatterns = patterns('''',
url(r''^$'', TemplateView.as_view(template_name=''homepage.html''), name="home"),
)
Aquí hay información sobre cómo migrar a la versión 1.4 (cuando estaba en desuso).