8

Djangonaut の皆さん、こんにちは。

プロジェクトをdjango-lintでチェックしたところ、次の結果が得られました。

W:211,16:MyModel: timestamp: Uses superceded auto_now or auto_now_add

コミットメッセージ:

auto_now/auto_now_add not technically deprecated, but they still suck.

なぜ彼らは auto_now/auto_now_add を「嫌だ」と言うのですか? これら 2 つのフィールド パラメーターを使用して、created/last-updated パターンを問題なく実装できました。

このパターンに対するより良いアプローチはありますか? カスタムフィールドクラス? そして、なぜ (このアプローチの方が優れているのであれば) Django に統合されていないのでしょうか?

4

2 に答える 2

12

default正しい修正は、適切な日時を返すフィールドとして callable を渡すことdatetime.datetime.nowです。

于 2012-04-17T16:18:06.367 に答える
2

auto_nowauto_now_adddjango を介して値を変更する方法がまったくないため (たとえば、管理インターフェイスで)、有害であると見なされます。

これは他のフラグとの矛盾であり、django の人々は一般的にその種の魔法を好みません。

于 2012-04-17T16:25:16.957 に答える