我正试图用django 1.4连接lamson。 我已经看过关于用django连接lamson和来自源代码的librelist示例的文档,但它似乎使用了以前版本的django。
我创建了一个“webapp”项目,其中包含基本django 1.4教程中描述的“电子邮件”应用程序。
webapp / webapp / settings.py文件包含对installed_apps中的电子邮件应用程序的引用,如下所示:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
# 'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'emails',
)
lamson应用程序文件夹包含django项目的webapp文件夹。 现在,我没有一个包含Zed Shaw提供的librelist示例中的所有内容的“webapp / emails”文件夹,而是还有另一个包含settings.py的webapp文件夹,以及包含模型的额外应用程序文件夹(电子邮件)和所有(这是由于django 1.4中的新目录结构)。
在lamson的config / settings.py文件中,我添加了以下行:
os.environ['DJANGO_SETTINGS_MODULE'] = 'webapp.webapp.settings'
现在,在我的处理程序代码(app / handlers / my_handler.py)中,我导入了我的模型:
import webapp.emails.models
我可以正确地从我的模型创建实例,但是一旦我尝试使用my_instance.save()将它们保存到数据库,我就会收到以下错误:
File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
ImportError: No module named emails
知道问题是什么吗?
否则,是否可以删除django 1.4并使用django 1.3使其工作?
感谢您的帮助
答案 0 :(得分:0)
这是适合我的设置
将webapp和mailserver文件夹移到同一级别
mailserver #lamson project
- lamson files
webapp #django 1.4 app
- settings.py ...
在lamson settings.py
中import sys
import os
sys.path.append('../webapp')
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
现在你可以在没有任何前缀
的lamson处理程序中访问django项目模块e.g。
import emails.models