我试图在我的项目中使用django-admin dbshell(任何其他cmd给出相同的结果)。我得到了
You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
所以我做了
export DJANGO_SETTINGS_MODULE=mysite.settings
现在我得到了
no module named 'mysite'
当然我更换了'mysite'用我的应用程序的名称。 顺便说一下,我的代码已经有了这个:
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
任何想法? 感谢
答案 0 :(得分:4)
你可以这样做:
python manage.py dbshell --settings=mysite.settings
答案 1 :(得分:3)
通常,您应该只使用django-admin
来启动新项目。创建项目后,请改用./manage.py
。 manage.py
脚本负责为您加载设置。
当您使用django-admin
时,包含mysite
的目录需要位于Python路径上,以便Django能够加载mysite.settings
。