我已经问过这个问题一次但没有得到答案,我已经阅读了我可以在 Internet 上找到的每个发生此错误的示例,因此我将在这里再次尝试提供更多信息。
我正在尝试什么: 克隆一个远程仓库,然后我将在我的开发机器上实时运行以用于开发目的。
我遇到的问题: 从网络服务器上克隆我的 repo 后,使用 pip requirements.txt 将依赖项安装到我的 virtualenv 中,我尝试 syncdb 来构建数据库并允许我使用 runserver 运行服务器但是当我尝试这样做时我得到错误“DatabaseError:没有这样的表:django_site”输出。
我尝试过的:从我的 installed_apps 中注释掉 django-contrib-sites。使用带和不带 --ignore-installed 的 pip 手动安装 django_sites,pip 说“已成功安装 django-sites django”,但仍然出现错误。我试图“迁移”和“迁移 --all”,但我得到了同样的错误。我还验证了 db db.sqlite3 是 settings.py 中指定的 db 并且位于正确的位置。
已安装的应用程序-
INSTALLED_APPS = (
'south',
'django.contrib.flatpages',
'django.contrib.comments',
'django.contrib.markup',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'django.contrib.sitemaps',
)
其中许多是来自先前开发的自制应用程序。
.bashrc 中的行
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/projects
source /etc/bash_completion.d/virtualenvwrapper
最后一行是因为我在这台开发机器上使用 Ubuntu,对此不是 100% 确定,但在启动 bash 时我没有收到任何错误。
部署文件夹 不知道这是什么,它有我的 requirements.txt 和其他一些文件: - httpd.conf - nowww.htaccess -plural.htaccess - requirements.txt - ssl.htaccess - wsgi.py
我正在使用的流程
create virtualenv with mkvirtualenv envname
pip install django
git ssh clone from remote to local folder
pip install -r requirements.txt from repo
./manage.py syncdb
DatabaseError:没有这样的表:django_site
我真的需要弄清楚这一点,因为它会阻止我在家里部署在我的开发服务器上并进行远程工作。如果有人可以帮忙,我保证会详细说明答案,如果结果证明是一个复杂的解决方案,我什至会在某个地方建立一个教程页面。