2016-11-29 9 views
0

いくつかのデータを初期化しようとしています。Django loaddataエラー__init __()は3つの引数をとります(1が指定されています)

私は私のinitial.jsonファイルとしてこれによりmanage.py loaddataの--verbosity = 1 initial.json

を実行します。

[ 
    { 
    "model": "listen.Playlist", 
    "pk": 1, 
    "fields": { 
     "message": "Hello There!", 
     "url": "pl8675309", 
     "background": "citylights.png" 
    } 
    } 
] 

そして私が手出力は次のようになります。

File "manage.py", line 22, in <module> 
    execute_from_command_line(sys.argv) 
    File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line 
    utility.execute() 
    File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 359, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 294, in run_from_argv 
    self.execute(*args, **cmd_options) 
    File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 345, in execute 
    output = self.handle(*args, **options) 
    File "/Library/Python/2.7/site-packages/django/core/management/commands/loaddata.py", line 64, in handle 
    self.loaddata(fixture_labels) 
    File "/Library/Python/2.7/site-packages/django/core/management/commands/loaddata.py", line 104, in loaddata 
    self.load_label(fixture_label) 
    File "/Library/Python/2.7/site-packages/django/core/management/commands/loaddata.py", line 161, in load_label 
    for obj in objects: 
    File "/Library/Python/2.7/site-packages/django/core/serializers/json.py", line 86, in Deserializer 
    six.reraise(DeserializationError, DeserializationError(e), sys.exc_info()[2]) 
    File "/Library/Python/2.7/site-packages/django/core/serializers/json.py", line 80, in Deserializer 
    for obj in PythonDeserializer(objects, **options): 
    File "/Library/Python/2.7/site-packages/django/core/serializers/python.py", line 183, in Deserializer 
    obj = base.build_instance(Model, data, db) 
    File "/Library/Python/2.7/site-packages/django/core/serializers/base.py", line 218, in build_instance 
    obj = Model(**data) 
    File "/Library/Python/2.7/site-packages/django/db/models/base.py", line 556, in __init__ 
    super(Model, self).__init__() 
django.core.serializers.base.DeserializationError: Problem installing fixture 'initial.json': __init__() takes exactly 3 arguments (1 given) 
+0

あなたの 'Playlist'モデルはどのように見えますか? –

+0

ありがとうございます。削除されたもので私のモデルを見て、不要なものを修正しました。私はそれを感謝します! – thellamaone

答えて

0

Minimal Complete Verifiable Exampleが表示されていないため、コードの内容を再現することはできません。

私が推測することができ、あなたが書いたモデルサブクラスが予想外に多くの引数を必要とするカスタム__init__を持っていること:

File "/Library/Python/2.7/site-packages/django/db/models/base.py", line 556, in __init__ 
    super(Model, self).__init__() 
django.core.serializers.base.DeserializationError: Problem installing fixture 'initial.json': __init__() takes exactly 3 arguments (1 given) 

ので、あなたはリスコフの置換原則(SOLID principlesの1)を破損した場合 - あなたのサブクラスは実際に親クラスとしての使用を許可しません。

関連する問題