[解決済み] Django の datetime の問題 (default=datetime.now())
2022-03-17 04:25:14
質問
以下のようなDBモデルを持っています。
from datetime import datetime
class TermPayment(models.Model):
# I have excluded fields that are irrelevant to the question
date = models.DateTimeField(default=datetime.now(), blank=True)
以下のようにして、新しいインスタンスを追加しています。
tp = TermPayment.objects.create(**kwargs)
私の問題:データベース内のすべてのレコードの日付フィールドの値は同じで、それは最初の支払いの日付です。サーバーが再起動した後、1つのレコードには新しい日付があり、他のレコードは最初の日付と同じになっています。いくつかのデータがキャッシュされているように見えますが、どこにあるのかわかりません。
データベース: mysql 5.1.25
django v1.1.1
解決方法は?
それは次のようになります。
datetime.now()
はモデルが定義されたときに評価されるのであって、レコードを追加するたびに評価されるわけではありません。
Djangoには、あなたがやろうとしていることを実現する機能がすでにあります。
date = models.DateTimeField(auto_now_add=True, blank=True)
または
date = models.DateTimeField(default=datetime.now, blank=True)
2番目の例と現在あるものとの違いは、括弧がないことです。を渡すことで
datetime.now
この関数は、レコードが追加されるたびに呼び出されます。もし、それを
datetime.now()
この場合、関数を評価し、その戻り値を渡しているだけです。
より詳しい情報は、Django の モデルフィールドリファレンス
関連
-
Python入門 openを使ったファイルの読み書きの方法
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない
-
[解決済み】Djangoのクエリセットフィルタリングでnot equalを行うにはどうすればよいですか?
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] pandasを使った "大量データ "ワークフロー【終了しました
-
[解決済み] datetimeをdateに変換するにはどうすればよいですか?
-
[解決済み] Pythonで日付をdatetimeに変換する
-
[解決済み] Djangoのバージョンを確認する方法
-
[解決済み】文字列をdatetimeに変換する
-
[解決済み】Djangoでnull=Trueとblank=Trueの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ピロウズ画像色処理の具体的な活用方法
-
python call matlab メソッドの詳細
-
PicgoのイメージベッドツールをPythonで実装する
-
Python百行で韓服サークルの画像クロールを実現する
-
PythonでECDSAを実装する方法 知っていますか?
-
[解決済み】RuntimeWarning: 割り算で無効な値が発生しました。
-
[解決済み] _tkinter.TclError: 表示名がなく、$DISPLAY環境変数もない。
-
[解決済み】numpyの配列連結。"ValueError:すべての入力配列は同じ次元数でなければならない"
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】ImportError: bs4という名前のモジュールがない(BeautifulSoup)