django.db.utils.OperationalError: cannot ALTER TABLE "news_article" because it has pending trigger events
だから、私は、次のような問題があります。彼らはblank=True
とnull=True
に設定されました...残念です。ああ、いいえ、私はそれを修正する必要はありません。私はnull=True
を削除し、default=''
を設定した後だから、私は私の移行に次のことを書いた:null = Trueフィールドをnull = Falseフィールドに変更するにはどうすればいいですか?私はいくつかのChar-とTextFieldを含んでいるDjangoのクラス、記事を、持っている</p> <p>:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import languagefields.utils
from languagefields.utils import LANGUAGES
from django.utils.translation import activate
from news.models import Article
def null_migrations(apps, schema_editor):
activate('en')
fields = ['short_title', 'description']
for p in Article.objects.all():
for l in LANGUAGES:
for f in fields:
if p.get_language(l, f) is None:
p.set_localized(l, f, '')
p.save()
class Migration(migrations.Migration):
dependencies = [
('news', '0001_initial'),
]
operations = [
migrations.RunPython(null_migrations),
migrations.AlterField(....
をフィールドには、翻訳を有効にデフォルトChar- /テキストフィールドに基づいて、カスタムフィールド、です。だから、彼らの束があります。あなたが作成するすべてのフィールドについて、英語、ドイツ語などの説明が5つあります。ちょっとした機能はうまく動作し、サーバーで実行して手動でデータベースエントリをクリーンアップしましたが、それは停止しません上記の例外。だから私は外出先で掃除するためにそれを移住に入れたいと思った。しかし、まだ例外です。私は間違って何をしていますか?
は、事前にありがとう:) 2でマイグレーションを分割
EDIT
:
0002_null_cleaning.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import languagefields.utils
from languagefields.utils import LANGUAGES
from django.utils.translation import activate
from news.models import Article
def null_migrations(apps, schema_editor):
activate('en')
fields = ['short_title', 'description']
for p in Article.objects.all():
for l in LANGUAGES:
for f in fields:
if p.get_language(l, f) is None:
p.set_localized(l, f, '')
p.save()
class Migration(migrations.Migration):
dependencies = [
('news', '0001_initial'),
]
operations = [
migrations.RunPython(null_migrations),
]
0003_data_migration
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models, migrations
import languagefields.utils
class Migration(migrations.Migration):
dependencies = [
('news', '0002_null_cleaning'),
]
operations = [
migrations.AlterField(...
を
まだ同じエラーが発生しています0003
私はそれを分割しようとしました。私は自分の投稿を編集して、私がどのようにしたのかを示しています。それは何も変わっていない、私はそこに何か間違っているかどうか知っていますか? – Ozymandias