2012-02-03 13 views
0

それらを変更した後、Djangoのモデルインスタンスフィールドの値を取得しますか? 私は前回の変更を再度選択したり、コピーを作成したくないです。他のアイデア?おそらく、そのような変更が行われる場所があります。はのは、次のことを考えてみましょう

+1

@YujiTomitaはかなり完全にあなたの2つの規定を無視して指摘するように、;)あなたは* *したくない二つの方法は、あなたがやりたいことを達成するための唯一の2つの方法があります。 –

+0

@ChrisPratt - それは素晴らしいポイントです...私はそれらの2つの規定に気付かなかった!おっとっと... –

答えて

1

あなたがデータベースを再度(Model.objects.get(pk=1).name

を照会するか、またはあなたには、いくつかの属性にモデルの状態を保存するには。これは、多くの場合、変更を検出するために行われます。

class MyModel(models.Model): 
    def __init__(self, *args, **kwargs): 
     super(MyModel, self).__init__(*args, **kwargs) 
     self._initial = self.__dict__ 

a = MyModel.objects.get(pk=1) 
a.name = "bar" 
a._initial['name'] == "foo" 
関連する問題