Django 1.7からはSouthや他の移行システムを使う必要がないので、単純なコマンドを使うだけです。python manage.py makemigrations
しかし、次のようなエラーが表示されます:
You are trying to add a non-nullable field 'new_field' to userprofile without a default;
we can't do that (the database needs something to populate existing rows).
models.pyは次のとおりです。
class UserProfile(models.Model):
user = models.OneToOneField(User)
website = models.URLField(blank=True)
new_field = models.CharField(max_length=140)
オプションとは何ですか?
ベストアンサー1
もしあなたは開発の初期段階にあり、気にしないあなたの現在のデータベースデータ削除してから移行することができます。ただし、最初に移行ディレクトリをクリーンアップし、テーブル (django_migrations) からその行を削除する必要があります。
rm your_app/migrations/*
注意: 移行フォルダー内の _ _ init _ _ .py を削除しないでください。
rm db.sqlite3
python manage.py makemigrations
python manage.py migrate
もし以前に Django の Admin Web アプリのスーパーユーザーを作成したことがある場合は、そのユーザーを再度作成する必要があるかもしれません。