2017-02-20 8 views
0

フォーム入力のデフォルト値は現在の時刻でなければなりません。ユーザーは将来の時刻を提供するように選択し、通常の日時フィールドを表示する必要があります。これはjavascriptなしで実現できますか?現在または将来の時刻の日時入力

+1

あなたが過去の日付がカレンダーに表示されないはずです、意味しますか? –

+0

どうしますか?私はdjangoのバリデータとPythonの 'property()'関数を考えています。おそらくあなたがあなたの質問に詳細を追加すると、より良い答えを与えることができます – chachan

+0

これはあなたが探しているものですか? http://stackoverflow.com/questions/4941974/django-how-to-set-datefield-to-only-accept-today-future-dates – themanatuf

答えて

0

入力を空白のままにして、バックエンドの現在の時刻に変更することができます(または、テンプレートのレンダリングの時点で現在の時刻に設定し、過去の時刻を「今すぐ」と解釈することもできます)。しかしJavaScriptなしでできることは、空の入力は現在の時間を意味するというコメントを追加することです。現時点で何らかの空想的なチェックボックスを作ってdatetime入力を隠したいのであれば、JavaScriptでそれを行うべきです。

0

あなたのテンプレートに<input name="date_input" type="date" id="date_input">を使うことができます。

とビューを行うには、実行します。

from datetime import datetime 
# get a string from a POST like "10/2/2018" 
date_get = request.POST.get("date_input") 

# format of date/time strings; assuming dd/mm/yyyy 
date_format = "%d/%m/%Y" 

# create datetime objects from the strings 
date = datetime.strptime(date_get, date_format) 

# Check if we have a datetime 
print(date) 
datetime.datetime(2018, 2, 10, 0, 0) 
関連する問題