2017-12-11 4 views
0

Ich versuche, eine Eingabe aus einer Vorlage an eine Abfrage in meiner Ansicht zu übergeben, aber wenn das Datum in Djangos Standarddatum nicht übergeben wird Format YYYY-MM-DD, dann wird ein Fehler ausgegeben.Django Datumsformat von JJJJ-MM-TT ändern HH: MM bis MM/TT/JJJJ

[u "'11/11/2012' Wert hat ein ungültiges Format Es in YYYY-MM-DD HH sein muss. MM [:. Ss [.uuuuuu]] [TZ] Format"]

template.html

<form method="GET" action="/BusComm/interactions"> 
    <div style="width: 100px; float:left"> 
     <p>To Date:</p> 
    </div> 
    <div style="width: 200px; float:left"> 
     <input type="date" Placeholder="mm-dd-yyyy" name="date_to" id="id_q" value="{{ query }}" float="right"> 
    </div> 
    <input type="submit" value="Submit" /> 
</form> 

View.py

def interactions(request): 
    today = datetime.now().date() 
    table = interactionsTable(Interactions.objects.all()) 

    if request.GET.get('date_from'): 
      date_from = request.GET.get('date_from') 

      table = interactionsTable(Interactions.objects.filter(date__range=[date_from, today])) 
      return render(request, 'BusComm/interactions.html',{ 
      'table': table, 
     }) 

Die interactionsTable (Interactions.object.filter()) Zeile ist derjenige, der den Fehler auslöst.

Meine Frage ist, wie kann ich das Datumsformat in Django ändern, um MM/TT/JJJJ anstelle von JJJJ-TT-MM zu akzeptieren?

Antwort

0
>>> from datetime import datetime 
>>> d = datetime.strptime('11/11/2012', '%m/%d/%Y') 
>>> d.strftime('%Y/%m/%d') 
'2012/11/11' 

konvertieren Datumsformat zum YYYY-DD-MM in views.py ist einfacher, als Kraft Django MM/DD/YYYY in Filter akzeptieren.

Verwandte Themen