基础项目结构
baseproject
baseapp
models.py
class BaseModel(models.Model)
...
Run Code Online (Sandbox Code Playgroud)
其他项目结构:
project
app
views.py
urls.py
Run Code Online (Sandbox Code Playgroud)
project.app.views.py
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'project.settings'
from django.conf import settings
from baseproject.baseapp.models import BaseModel
print BaseModel.objects.count()
Run Code Online (Sandbox Code Playgroud)
从命令行运行时,它引发了"表'project.baseapp_baemodel'不存在"错误:"python views.py".
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'baseproject.settings'
from django.conf import settings
from baseproject.baseapp.models import BaseModel
print BaseModel.objects.count()
Run Code Online (Sandbox Code Playgroud)
将project.settings更改为baseproject.settings后,它在命令行中运行.
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'baseproject.settings'
from django.conf import settings
from baseproject.baseapp.models import BaseModel
def someview(request):
count = BaseModel.objects.count()
return render_to_response(...)
Run Code Online (Sandbox Code Playgroud)
但是当通过在浏览器中打开相应的URL来访问视图时,它仍然会引发"表'project.baseapp_baemodel'不存在"错误.
上面的代码有什么问题?