0

django'unicode' object has no attribute 'year'のフィルターからエラーが発生しています。timesince以前は、この形式の文字列で正常に機能していました: "2013-06-20". ただし、時間要素を含めるように文字列を更新したため、"2013-06-20T11:20:05.499274"このエラーが発生しました。

時間要素を処理するには、どの形式を指定する必要がありますか? または、ビューで追加の処理を行う必要がありますか?

4

1 に答える 1

1

timesinceフィルターは日付のみを受け入れ、日付と時刻の組み合わせは受け入れません。現在の時刻 (またはオプションで、比較する渡された日付) からの時差が表示されます。

ビューで、その文字列を日付コンポーネントのみに解析します。すでに日時オブジェクトとして持っている場合は、.date()それを呼び出して日付部分を取得します。

文字列として持っている場合:

fmt = "%Y-%m-%dT%H:%M:%S.%f"
date_only = datetime.strptime("2013-06-20T11:20:05.499274", fmt).date()
于 2013-06-20T10:50:27.040 に答える