0

私は本当にここで立ち往生しています。私は今までうまく移行しているモデルを持っています。しかし、今日私は新しいフィールドを追加しschemamigration app --auto、その後、新しく追加されたフィールドが見つかりましたが、実行migrate appすると、フィールドnewfieldが存在しないと表示されます。理由がわかりません。コメントを外して、スキーマ移行と移行を再度試みましたが、同じエラーが吐き出されています。私は何を間違えましたか、そして私は今何をすべきですか?そのような場合の固定手順が必要です:(

手伝ってくれてありがとう

編集:

class User(models.Model):
  registerdate = models.CharField(max_length=400,default='')
  vorname = models.CharField(max_length=100,default='')
  nachname = models.CharField(max_length=100,default='')
  plz = models.CharField(max_length=10,default='')  <------------- this field i added
  land = models.CharField(max_length=100,default='')

エラーは言う:

the following sql statement failed: ALTER TABLE home_user DROP COLUMN plz CASCADE;

しかし今、私はこのフィールドのコメントを外し、移行しようとすると、PLZ「関係の列がUSER存在しません」と表示されます。どうしてこれなの?:(

4

1 に答える 1

3

コメントを外して、スキーマ移行と移行を再度試みましたが、同じエラーが吐き出されています。

新しいフィールドを追加した後に、作成した移行を削除しましたか? そうでない場合、移行を実行すると、この移行の実行が試行され続けます。初めて実行に失敗したと言うので、修正または削除しない限り、常に実行に失敗し続けます。

最初の移行が実際に実行に失敗した場合は、それを削除して (および作成した後続の移行をすべて) 削除してから、再作成することができます。

ただし、それを試す前に、migrate を実行したときに発生するエラーのより完全なトレースバックを投稿することをお勧めします。あなたのデータベースの状態について南が考えているものと実際の状態との間に不一致があるかもしれませんが、それ以上の情報がなければ確実に言うのは難しいです.

于 2013-03-12T03:47:04.833 に答える