2
私が作業しているアプリケーションでこのバグを発見し、テストする新しいdjangoサーバーインスタンスでこのバグを複製しました。ここで私は走ったシェルがある:私はモデルインスタンスの値を調整し、model.save()が実行されると、これらの変更を有効にすることはできませんなぜDjango model.save()同じモデルの新しいインスタンスを有効にしない
[email protected]:~/testproject$ sudo python3 manage.py shell
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.1.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: from testapp.models import testmodel
In [2]: a = testmodel.objects.first()
In [3]: print(a.testvar1)
0
In [4]: a.testvar1 = 1
In [5]: print(a.testvar1)
1
In [6]: a.save()
In [7]: b = testmodel.objects.first()
In [8]: print(b.testvar1)
0
だから、誰かが説明してくださいだろうか?私はDjangoのドキュメントでモデルを変更するための代替方法を見つけることができませんが、いずれの方向にも感謝します。ありがとう!
'testvar'はmodel.Fieldインスタンスですか?モデルフィールドのみがデータベースに保存されます。他の属性は永続化されません。 'testmodel'のクラス定義をあなたの質問に追加してください。 –
これは私が探していた答えです、感謝します。Haken Lid –