djangoでMySQLに対してテーブルを作成しようとしています。
ただ、migrateを実行しても正常終了はされるのですが、テーブルが作成されていませんでした。
sqlmigrateで確認したところ、CREATEのSQL文が発行されておらず、
Create model Device
という記載があるだけでした。
他のアプリにmodels.pyのみコピーして同じ処理を行ったところ、
問題無くCREATE文が発行されていたので、
このアプリの設定かなと思ってはいるのですが、どこを見れば良いのかわからず、解決できておりません。
何か、気づく点などお教え頂ければ幸いです。
■実際の処理
(1)manage.py makemigrations 【アプリ名】
→migrationsフォルダに下記3ファイルができる
■0001_initial.pyの中身
Generated by Django 3.2.4 on 2021-08-19 02:37
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Device', fields=[ ('id', models.BigAutoField(primary_key=True, serialize=False)), ('name', models.CharField(max_length=255)), ('place', models.CharField(max_length=100)), ('type', models.CharField(max_length=100)), ], ), ]
(2)manage.py sqlmigrations 【アプリ名】 0001
Create model Device
とだけ表示。
※他のアプリにて(1)(2)を実行したところ、
Create model Device
CREATE TABLE opstds_visspec_device
(id
bigint AUTO_INCREMENT NOT NULL PRIMARY KEY, name
varchar(255) NOT NULL, place
varchar(100) NOT NULL, type
varchar(100) NOT NULL);
という結果が返され、無事テーブル作成もできました。
(3)manage.py migrate 【アプリ名】
正常に処理はされるが、(2)でcreate文が発行されていないので、テーブルは作成されていない。
あなたの回答
tips
プレビュー