Django
チュートリアルを実行しようとしていますが、python manage.py makemigrations polls
と入力すると次のエラーが発生しました
Unknown command: 'makemigrations'
チュートリアルの link を参照してください。これまでのすべての手順を正常に完了しましたが、現在何が問題なのか、または修正方法がわかりません。追伸:既にINSTALLED_APPSに「投票」を含めています!
INSTALLED_APPS = (
'Django.contrib.admin',
'Django.contrib.auth',
'Django.contrib.contenttypes',
'Django.contrib.sessions',
'Django.contrib.messages',
'Django.contrib.staticfiles',
'polls',
'South',
)
回答:INSTALLED_APPSを次のように変更する必要がありました。
INSTALLED_APPS = (
'Django.contrib.admin',
'Django.contrib.auth',
'Django.contrib.contenttypes',
'Django.contrib.sessions',
'Django.contrib.messages',
'Django.contrib.staticfiles',
'polls',
)
また、このコマンドを使用しました:python manage.py syncdb
移行は、2014年9月2日に正式にリリースされたバージョン1.7で最初に追加されました。チュートリアルがDjangoを使用しているバージョンと一致することを確認する必要があります。チュートリアルは1.9をカバーしています:
https://docs.djangoproject.com/en/1.9/intro/tutorial01/
または、古いバージョンのDjangoを使用している場合、そのURLの「1.9」を現在のバージョンに変更できます(1.3に戻ります)。または、ドキュメントページのドロップダウンを使用してバージョンを選択し、「チュートリアル」を検索します。
実行しているDjangoのバージョンを確認します( thanks @BradyEmerso n):
python -c "import Django; print(Django.get_version())"
1.8より古い場合:
pip install --upgrade Django
バージョン1.9を使用していても、このエラーが発生していました。未適用の移行があり、それが私の場合の根本原因でした。私は 'python manage.py migrate
'それらを適用し、それは私のために働いた。
Django 1.7以降にmakemigrationが追加されたため、古いバージョンのDjangoを使用している場合は、settings.pyを変更し、インストール済みのアプリに
INSTALLED_APPS = (
'Demo',
'Django.contrib.admin',
'Django.contrib.auth',
'Django.contrib.contenttypes',
'Django.contrib.sessions',
'Django.contrib.messages',
'Django.contrib.staticfiles',
)
そして、あなたはコマンドを実行することができます
python manage.py syncdb
実行する前に仮想環境をロードする必要があります。
Linux/OSXには以下のコードを使用します。
source venv/bin/active
Windows用の次のコード
source venv/Scripts/activate
はじめて、次のコードをproject_name\settings.pyファイルに追加します。
`INSTALLED_APPS = [
'Django.contrib.admin',
'Django.contrib.auth',
'Django.contrib.contenttypes',
'Django.contrib.sessions',
'Django.contrib.messages',
'Django.contrib.staticfiles',
#Django REST Framework
'rest_framework',
#Games application
'games.apps.GamesConfig',
]`
保存した後、次のコードを実行するとエラーが発生しました。
`python manage.py makemigrations games`
次に、settings.pyファイルを確認します。2つのINSTALLED_APPSがあり、2番目のファイルには次のものがないことがわかります。これらを追加すると、コードは機能しました。
`#Django REST Framework
'rest_framework',
#Games application
'games.apps.GamesConfig',`