Djangoユーザーモデルでの移行中にOneToOneFieldでDjangoUNIQUE制約が失敗しました

アレクサンダーシュピンドラー

データベースにはすでに4人が登録されていますが、モデルにまだリレーション属性がないときに登録されました。それらを追加したとき、私はこのモデルを手に入れました:

class Person(User):
    type = models.BooleanField()
    avatar = models.ImageField(blank=True)
    second_name = models.CharField(max_length=30, blank=True, default='')
    birthday = models.DateField(blank=True, default=None)  
    country = models.CharField(max_length=30, blank=True, default='')
    city = models.CharField(max_length=30, blank=True, default='')
    school = models.CharField(max_length=60, blank=True, default='')
    university = models.CharField(max_length=60, blank=True, default='')
    work_place = models.CharField(max_length=60, blank=True, default='')
    profession = models.CharField(max_length=60, blank=True, default='')
    phone = models.CharField(max_length=30, blank=True, default='')
    about = models.TextField(blank=True, default='')
    latitude = models.FloatField(blank=True, default=-1)
    longitude = models.FloatField(blank=True, default=-1)

    friends = models.ForeignKey(
        'self',
        related_name='+',
    )

    black_list = models.ForeignKey(
        'self',
        related_name='+',
    )

    dialogues = models.ManyToManyField(
        'dialogues.Dialogue',
    )

    news = models.OneToOneField(
        'news.NewsList',
    )

    wall = models.OneToOneField(
        'blogs.Blog',
    )

しかし、このモデルを移行すると、次のエラーが発生します:django.db.utils.IntegrityError:UNIQUE制約に失敗しました:persons_person.wall_id。

フォールアウトコーダー

複数のブログを書くことができるためBlog、モデルとの関係を変更する必要がありPersonます。したがって、1Mの関係になります。したがって、ブログモデルでは、ForeignKeytoPersonモデルを定義する必要があります

person = models.ForeignKey(
        'person.Person',
        related_name='walls'    
    )

また、wallフィールドはPersonモデルから削除されますが、人物オブジェクトからは、関連する名前を使用してブログにアクセスできるようになりますwalls

あなたの持っていることの必要性がある場合PersonBlog1-1との関係を、そしてあなたは、この制約に従わないデータベースからレコードを削除する必要があります。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ユーザーの作成/編集/削除時に、django管理パネルでFOREIGNKEY制約が失敗しました。(カスタムユーザーモデルを使用します。)

分類Dev

DjangoUNIQUE制約が失敗しました

分類Dev

IntegrityError NOT NULL制約が失敗しました:-フォームの検証でユーザーIDがありません(別のモデルの外部キー)

分類Dev

djangoでのユーザーの作成(NOT NULL制約に失敗しました:auth_user.last_login)

分類Dev

スーパーユーザーの作成時にDjango2.1 NOTNULL制約が失敗しました

分類Dev

モデルへのjsonデータの投稿中にDjangoNotnull制約が失敗しました

分類Dev

DjangoモデルIntegrityError:NOT NULL制約が失敗しました:

分類Dev

Django-ユーザープロファイル:UNIQUE制約に失敗しました:main_userprofile.user_id

分類Dev

Djangoの移行コマンドがユーザーモデルへの外部キーで失敗する

分類Dev

UNIQUE制約に失敗しました:ユーザー情報の更新中にauth_user.username

分類Dev

データがnullでない場合、null制約のため、データの保存に失敗します

分類Dev

Djangoのユーザーモデルのテストは失敗しますが、ブラウザーでは機能します

分類Dev

djangoユーザーが継承したモデルが失敗する

分類Dev

データを新しいテーブルにコピー中にNOTNULL制約が失敗しました

分類Dev

スーパーユーザー作成のエラーNOTNULL制約が失敗しました

分類Dev

DjangoアプリのDBユーザーがAWSでの認証に失敗しました

分類Dev

Laravel5:関連するデータベーステーブルへのデータの書き込み中にQueryExceptionが発生しました。エラー:「子行を追加または更新できません:外部キー制約が失敗します」

分類Dev

Sqlite3で外部キー制約が失敗しました

分類Dev

djangoモデルの移行中に「トランザクションがアクティブです」エラーが発生しました

分類Dev

ユーザーモデルでのSailjsエラー:エラー:フック( `orm`)の読み込みに失敗しました

分類Dev

Laravelの移行-整合性制約違反:1452子行を追加または更新できません:外部キー制約が失敗します

分類Dev

Djangoでこのエラーの原因:NOT NULL制約が失敗しました:mainapp_comment.post_id

分類Dev

Ansibleファイルモジュールエラー-chownが失敗しました:ユーザーの検索に失敗しました

分類Dev

親行を削除または更新できません外部キー制約がレールに失敗します

分類Dev

外部キー制約の追加に失敗しました。参照されているテーブルに制約のインデックスがありません* *

分類Dev

`NOT NULL制約が失敗しました:`ユーザーを作成しようとしたとき

分類Dev

実行に失敗しました:ユーザープログラムがModuleNotFoundErrorで失敗しました:AzureML実験で「amlrun」という名前のモジュールがありません

分類Dev

初回の save() でユーザー モデルから OneToOneField データを取得します

分類Dev

GAPIがユーザーの認証に失敗しました

Related 関連記事

  1. 1

    ユーザーの作成/編集/削除時に、django管理パネルでFOREIGNKEY制約が失敗しました。(カスタムユーザーモデルを使用します。)

  2. 2

    DjangoUNIQUE制約が失敗しました

  3. 3

    IntegrityError NOT NULL制約が失敗しました:-フォームの検証でユーザーIDがありません(別のモデルの外部キー)

  4. 4

    djangoでのユーザーの作成(NOT NULL制約に失敗しました:auth_user.last_login)

  5. 5

    スーパーユーザーの作成時にDjango2.1 NOTNULL制約が失敗しました

  6. 6

    モデルへのjsonデータの投稿中にDjangoNotnull制約が失敗しました

  7. 7

    DjangoモデルIntegrityError:NOT NULL制約が失敗しました:

  8. 8

    Django-ユーザープロファイル:UNIQUE制約に失敗しました:main_userprofile.user_id

  9. 9

    Djangoの移行コマンドがユーザーモデルへの外部キーで失敗する

  10. 10

    UNIQUE制約に失敗しました:ユーザー情報の更新中にauth_user.username

  11. 11

    データがnullでない場合、null制約のため、データの保存に失敗します

  12. 12

    Djangoのユーザーモデルのテストは失敗しますが、ブラウザーでは機能します

  13. 13

    djangoユーザーが継承したモデルが失敗する

  14. 14

    データを新しいテーブルにコピー中にNOTNULL制約が失敗しました

  15. 15

    スーパーユーザー作成のエラーNOTNULL制約が失敗しました

  16. 16

    DjangoアプリのDBユーザーがAWSでの認証に失敗しました

  17. 17

    Laravel5:関連するデータベーステーブルへのデータの書き込み中にQueryExceptionが発生しました。エラー:「子行を追加または更新できません:外部キー制約が失敗します」

  18. 18

    Sqlite3で外部キー制約が失敗しました

  19. 19

    djangoモデルの移行中に「トランザクションがアクティブです」エラーが発生しました

  20. 20

    ユーザーモデルでのSailjsエラー:エラー:フック( `orm`)の読み込みに失敗しました

  21. 21

    Laravelの移行-整合性制約違反:1452子行を追加または更新できません:外部キー制約が失敗します

  22. 22

    Djangoでこのエラーの原因:NOT NULL制約が失敗しました:mainapp_comment.post_id

  23. 23

    Ansibleファイルモジュールエラー-chownが失敗しました:ユーザーの検索に失敗しました

  24. 24

    親行を削除または更新できません外部キー制約がレールに失敗します

  25. 25

    外部キー制約の追加に失敗しました。参照されているテーブルに制約のインデックスがありません* *

  26. 26

    `NOT NULL制約が失敗しました:`ユーザーを作成しようとしたとき

  27. 27

    実行に失敗しました:ユーザープログラムがModuleNotFoundErrorで失敗しました:AzureML実験で「amlrun」という名前のモジュールがありません

  28. 28

    初回の save() でユーザー モデルから OneToOneField データを取得します

  29. 29

    GAPIがユーザーの認証に失敗しました

ホットタグ

アーカイブ