1

ロードしたいダンプデータからのjsonファイルがあり、しばらくしてloaddataを実行すると、次のメッセージが返されます。

DeserializationError: 'NoneType' object has no attribute '_meta'

手がかりも参照もありません。これがどこから来たのかわかりません。Django 1.4.8 と 1.5.4 で試しましたが、結果は同じです。

どうなり得るか?

編集: 詳細を調べるために pdb を追加しましたが、エラーをトリガーするオブジェクトは auth.permission からのもののようです。

4

1 に答える 1

3

私はちょうど同じ問題を抱えていたので、解決策が同じかどうかはわかりませんが、これが私のものでした:

「raw = True」のケースを処理しない post_save シグナルがありました。

loaddata を使用する場合でも、post_save および pre_save シグナルが送信されるように見えますが、「生の」引数を使用します ( https://docs.djangoproject.com/en/1.5/ref/django-admin/#loaddata-fixture-を参照)。フィクスチャ)。以前からそうであったかどうかはわかりませんが、少なくともドキュメントにはありませんでした。

だから私はすべての post_save シグナルを入れました:

if kwargs['raw']:
    return

そして、それは大丈夫でした:)

于 2013-10-25T21:52:11.093 に答える