我的模型有以下字段。只要該模型發生變化,它就必須更新。Django - auto_now = True對自定義動作無效
modified_at = models.DateTimeField(auto_now = TRUE)
,我寫了一個自定義的行動,改變這種模式在管理界面的狀態。
對於除了管理界面中提到的自定義操作之外的所有類型的更新,此特定字段均可正常工作。有任何想法嗎?
我的模型有以下字段。只要該模型發生變化,它就必須更新。Django - auto_now = True對自定義動作無效
modified_at = models.DateTimeField(auto_now = TRUE)
,我寫了一個自定義的行動,改變這種模式在管理界面的狀態。
對於除了管理界面中提到的自定義操作之外的所有類型的更新,此特定字段均可正常工作。有任何想法嗎?
您可以在django的文檔中看到update()
實際上不會調用save()
。因此,這是非常正常的的DateField不受auto_now
更新(這將更新上的保存()調用)
http://docs.djangoproject.com/en/1.2/ref/models/querysets/#update-kwargs
是否有任何其他選項可以實現它? – 2010-11-02 16:48:35
你可以使用update(status ='a',modified_at = datetime.now)或類似的東西? – 2010-11-02 16:55:46
您可以手動發送保存信號來觸發任何使用該信號保存時運行的信號。 – 2013-05-23 16:43:27
告訴我們您的自定義操作。它是一個自定義的save()嗎? – chefsmart 2010-11-02 03:21:25
我的自定義如下。 make make_active(modeladmin,request,queryset): queryset.update(status ='a') make_active.short_description =「將所選用戶標記爲活動」 – 2010-11-02 04:48:34