首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django教程中使用模板

问在Django教程中使用模板
EN

Stack Overflow用户
提问于 2012-05-17 12:42:25
回答 4查看 246关注 0票数 3

我正在学习第4章: Django教程的模板,我正在尝试使用Python在Emacs的低级模式下运行以下代码:

代码语言:javascript
复制
>>> from django import template
>>> t = template.Template('My name is {{ name }}.')
>>> c = template.Context({'name': 'Adrian'})
>>> print t.render(c)
My name is Adrian.
>>> c = template.Context({'name': 'Fred'})
>>> print t.render(c)
My name is Fred.

但是我得到了错误here。

快速搜索一下就会发现,我应该这样设置我的DJANGO_SETTINGS_MODULE:

代码语言:javascript
复制
>>> import os
>>> os.environ["DJANGO_SETTINGS_MODULE"] = "settings.py"

但是,我遇到了这个错误:

代码语言:javascript
复制
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named settings.py

我正在使用Fedora 16。我如何正确地解决这个问题?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-05-17 13:13:08

您可以在python manage.py shell中执行此操作,因为.目录中将包含settings.py。

否则:

考虑到settings.py只是另一个python库,您需要确保将其添加到sys.path中,然后可以执行以下操作:

代码语言:javascript
复制
import settings
from django.core.management import setup_environ

setup_environ(settings)  # Setting up the env settings

这将为您的环境设置设置。这是正确的方式,

settings.py没有什么秘诀,因为django本身就是python的一个库,所以它不能默认设置sys.path的任何路径,除非按照我建议的那样导入并执行。

票数 2
EN

Stack Overflow用户

发布于 2012-05-17 17:44:22

你真的应该按照另一个答案中的建议使用setup_environ。

关于此特定异常的提示: Python是一个DJANGO_SETTINGS_MODULE模块名称,因此它不能以".py“结尾。通常,这是your_django_site.settings,并且模块/目录your_django_site必须在sys.path中。

票数 1
EN

Stack Overflow用户

发布于 2012-05-17 12:46:17

所有不在项目中的Django代码都应该从Django REPL运行,可以通过./manage.py shell获得,或者作为standalone script运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10629929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档