django'unicode' object has no attribute 'year'
のフィルターからエラーが発生しています。timesince
以前は、この形式の文字列で正常に機能していました: "2013-06-20"
. ただし、時間要素を含めるように文字列を更新したため、"2013-06-20T11:20:05.499274"
このエラーが発生しました。
時間要素を処理するには、どの形式を指定する必要がありますか? または、ビューで追加の処理を行う必要がありますか?
timesince
フィルターは日付のみを受け入れ、日付と時刻の組み合わせは受け入れません。現在の時刻 (またはオプションで、比較する渡された日付) からの時差が表示されます。
ビューで、その文字列を日付コンポーネントのみに解析します。すでに日時オブジェクトとして持っている場合は、.date()
それを呼び出して日付部分を取得します。
文字列として持っている場合:
fmt = "%Y-%m-%dT%H:%M:%S.%f"
date_only = datetime.strptime("2013-06-20T11:20:05.499274", fmt).date()