[英]Can't run migrations when setting up a project with cookiecutter-django
我一直在嘗試使用 cookiecutter-django 在本地建立一個新的 django 項目。 我已經按照文檔進行操作,但是在嘗試運行python manage.py migrate
時我不斷遇到錯誤。
錯誤追溯。
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site- packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/django/core/management/__init__.py", line 302, in execute
settings.INSTALLED_APPS
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/django/conf/__init__.py", line 55, in __getattr__
self._setup(name)
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/django/conf/__init__.py", line 99, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/importlib/__init__.py", line 109, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
File "<frozen importlib._bootstrap>", line 1129, in _exec
File "<frozen importlib._bootstrap>", line 1471, in exec_module
File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
File "/home/ubuntu/lasbrisas_project/django_condominios/config/settings/local.py", line 11, in <module>
from .common import * # noqa
File "/home/ubuntu/lasbrisas_project/django_condominios/config/settings/common.py", line 102, in <module>
'default': env.db('DATABASE_URL', default='postgres:///django_condominios'),
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/environ/environ.py", line 180, in db_url
return self.db_url_config(self.get_value(var, default=default), engine=engine)
File "/home/ubuntu/lasbrisas_project/venv/lib/python3.4/site-packages/environ/environ.py", line 371, in db_url_config
'PORT': _cast_int(url.port),
File "/usr/lib/python3.4/urllib/parse.py", line 156, in port
port = int(port, 10)
ValueError: invalid literal for int() with base 10: 'jd#uhUhey385'
我真的不知道在設置項目時我做錯了什么,如果您檢查我采取的步驟並幫助我找出缺少的內容,我將不勝感激。
使用 cookiecutter-django 設置項目的步驟:
pip、virtualenv、PostrgreSQL 已經安裝
pip install cookiecutter
cookiecutter https://github.com/pydanny/cookiecutter-django
virtualenv -p /usr/bin/python3 venv
source venv/bin/activate/
virtualenv - source venv/bin/activate/
cd intoprojectfolder
sudo ./install_os_dependencies.sh install
但 ./install_os_dependencies.sh 不在 projectroot 中,文件在實用程序/
cd utility
sudo ./install_os_dependencies.sh install
pip install -r requirements/local.txt
sudo su - postgres
psql
CREATE DATABASE myproject;
CREATE USER myprojectuser WITH PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE myproject TO myprojectuser;
\\q
mv env.example .env
export DATABASE_URL=postgres://myprojectuser:myprojectuserdbpassword@127.0.0.1:5432/myproject
python manage.py migrate
在那之后,當我得到回溯時,可能出了什么問題? 文檔沒有顯示更多信息,遷移應該有效。
Cookiecutter 使用項目名稱的 slug 作為您要使用的開發數據庫的名稱。 您需要自己創建數據庫。
從您的堆棧跟蹤中,這里是您的 settings.py 文件中給您問題的行:
File "/home/ubuntu/lasbrisas_project/django_condominios/config/settings/common.py", line 102, in <module>'default': env.db('DATABASE_URL', default='postgres:///django_condominios'),
它希望找到一個名為django_condominios的數據庫。
你可以通過運行來解決這個問題
createdb django_condominios
你應該很好地運行你的遷移。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.