What I can’t see input datetime form.form django in my browser?
the program that I run in the browser, The following code displayed instead of the input datetime
i have brought the codes of all the pages, please check
Thank you for your reply
forms.py
from django import forms from django.contrib.auth.models import User from datetime import datetime class ExpenseForm (forms.Form): text = forms.CharField( widget=forms.TextInput(attrs={'placeholder':'توضیحات' ,'class':'form-control'}), label='توضیحات', ) date = forms.DateTimeField( initial=datetime.now(), widget=forms.DateTimeInput(attrs={ 'placeholder':'تاریخ' , 'class':'form-control', 'type': 'datetime-local'}), label='تاریخ', ) amount = forms.IntegerField( widget=forms.NumberInput(attrs={'placeholder':'مقدار' ,'class':'form-control'}), label='مقدار' )
view.py
@login_required() def submit_expense(request): expense_form = ExpenseForm(request.POST or None) if expense_form.is_valid(): text = expense_form.cleaned_data.get('text') date = expense_form.cleaned_data.get('date') amount = expense_form.cleaned_data.get('amount') Expense.objects.create(text=text , date=date , amount=amount , user_id=request.user.id) return redirect('/submit/expense') context ={ 'expense_form':expense_form } return render(request,'hello.html',context)
hello.html
{% extends 'shared/_MainLayout.html' %} {% load static %} {% block content %} <div class="login-form"><!--expense form--> <div class="col-sm-4 col-sm-offset-1"> <div class="login-form"><!--expense form--> <h2>پولهای خرج شده :</h2> <form method="post" action="#"> {% csrf_token %} {{ expense_form.text }} {{ expense_form.amount }} {{ expense_form.data }} <button type="submit" class="btn btn-default">ثبت</button> </form> </div><!--/login form--> </div> {% endblock %}
please check the image to see my problem
Answer
you wrote {{ expense_form.data }}
instead of {{ expense_form.date }}