Добавлена пробная форма для ввода даты
This commit is contained in:
5
asuzr/forms.py
Normal file
5
asuzr/forms.py
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
from django import forms
|
||||||
|
from datetime import date
|
||||||
|
|
||||||
|
class DateForm (forms.Form):
|
||||||
|
date = forms.DateField(label = 'Date')
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse, HttpResponseRedirect
|
||||||
from django.template import RequestContext, Context, loader
|
from django.template import RequestContext, Context, loader
|
||||||
from asuzr.models import Product
|
from asuzr.models import Product
|
||||||
from asuzr.models import Attendance
|
from asuzr.models import Attendance
|
||||||
@@ -15,6 +15,7 @@ from django.db.models import Count, Sum
|
|||||||
from asuzr.common import custom_date
|
from asuzr.common import custom_date
|
||||||
from django.contrib.auth.decorators import login_required
|
from django.contrib.auth.decorators import login_required
|
||||||
from tables import *
|
from tables import *
|
||||||
|
from forms import *
|
||||||
from django_tables2 import RequestConfig
|
from django_tables2 import RequestConfig
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@@ -46,6 +47,8 @@ def get_orders_by_date(dt):
|
|||||||
@login_required
|
@login_required
|
||||||
def visit_view(request):
|
def visit_view(request):
|
||||||
curr_date = datetime.strptime(request.GET.get('date', date.today().strftime('%d.%m.%Y')), '%d.%m.%Y')
|
curr_date = datetime.strptime(request.GET.get('date', date.today().strftime('%d.%m.%Y')), '%d.%m.%Y')
|
||||||
|
form = DateForm(request.GET, initial = {'date': curr_date})
|
||||||
|
|
||||||
y,m = curr_date.year, curr_date.month
|
y,m = curr_date.year, curr_date.month
|
||||||
day_in_month = calendar.monthrange(y,m)[1]
|
day_in_month = calendar.monthrange(y,m)[1]
|
||||||
month_days = {i+1: {'date': custom_date(y,m,i+1)} for i in range(day_in_month)}
|
month_days = {i+1: {'date': custom_date(y,m,i+1)} for i in range(day_in_month)}
|
||||||
@@ -62,8 +65,6 @@ def visit_view(request):
|
|||||||
order_list = order_list.values('date')
|
order_list = order_list.values('date')
|
||||||
order_list = order_list.annotate(Count('product'), Sum('price'))
|
order_list = order_list.annotate(Count('product'), Sum('price'))
|
||||||
|
|
||||||
print order_sum
|
|
||||||
|
|
||||||
for order in order_list:
|
for order in order_list:
|
||||||
month_days[order['date'].day]['order'] = order
|
month_days[order['date'].day]['order'] = order
|
||||||
|
|
||||||
@@ -85,7 +86,15 @@ def visit_view(request):
|
|||||||
'cost': order_sum['price__sum'],
|
'cost': order_sum['price__sum'],
|
||||||
})
|
})
|
||||||
title = 'Таблица посещаемости на %s г.' % curr_date.strftime('%B %Y')
|
title = 'Таблица посещаемости на %s г.' % curr_date.strftime('%B %Y')
|
||||||
return render(request, 'asuzr/table.html', {'table': table, 'title': title})
|
|
||||||
|
if request.method == 'POST':
|
||||||
|
form = DateForm(request.POST)
|
||||||
|
if form.is_valid():
|
||||||
|
print form.cleaned_data
|
||||||
|
else:
|
||||||
|
form = DateForm()
|
||||||
|
|
||||||
|
return render(request, 'asuzr/table.html', {'table': table, 'title': title, 'form': form})
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
def main(request, day, month, year):
|
def main(request, day, month, year):
|
||||||
@@ -217,3 +226,12 @@ def prod_plan_view(request):
|
|||||||
title = u'Производственный план на %s - %s' % (sdate.strftime('%d.%m.%Y'), edate.strftime('%d.%m.%Y'))
|
title = u'Производственный план на %s - %s' % (sdate.strftime('%d.%m.%Y'), edate.strftime('%d.%m.%Y'))
|
||||||
RequestConfig(request).configure(table)
|
RequestConfig(request).configure(table)
|
||||||
return render(request, 'asuzr/table.html', {'table': table, 'title': title})
|
return render(request, 'asuzr/table.html', {'table': table, 'title': title})
|
||||||
|
|
||||||
|
def get_date(request):
|
||||||
|
if request.method == 'POST':
|
||||||
|
form = DateForm(request.POST)
|
||||||
|
if form.is_valid():
|
||||||
|
HttpResponse("AAA")
|
||||||
|
else:
|
||||||
|
form = DateForm()
|
||||||
|
return render(request, 'asuzr/date_control.html', {'form': form})
|
||||||
@@ -26,6 +26,7 @@ urlpatterns = patterns('',
|
|||||||
url(r'^accounts/login/$', login),
|
url(r'^accounts/login/$', login),
|
||||||
url(r'^accounts/logout/$', logout),
|
url(r'^accounts/logout/$', logout),
|
||||||
url(r'^jsi18n$', 'django.views.i18n.javascript_catalog', js_info_dict),
|
url(r'^jsi18n$', 'django.views.i18n.javascript_catalog', js_info_dict),
|
||||||
|
url(r'^test/$', 'asuzr.views.get_date'),
|
||||||
)
|
)
|
||||||
|
|
||||||
if settings.DEBUG:
|
if settings.DEBUG:
|
||||||
|
|||||||
@@ -53,6 +53,15 @@
|
|||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|
||||||
|
{% block controls %}
|
||||||
|
{% if form %}
|
||||||
|
<form action="/visits/" method="get">
|
||||||
|
{{ form }}
|
||||||
|
<input type="submit" value="OK" />
|
||||||
|
</form>
|
||||||
|
{% endif %}
|
||||||
|
{% endblock %}
|
||||||
<div id='content'>
|
<div id='content'>
|
||||||
<H1>{% block title %}{{ title }}{% endblock %}</H1>
|
<H1>{% block title %}{{ title }}{% endblock %}</H1>
|
||||||
|
|
||||||
|
|||||||
4
templates/asuzr/date_control.html
Normal file
4
templates/asuzr/date_control.html
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<form action="/curr-date/" method="post">
|
||||||
|
{{ form }}
|
||||||
|
<input type="submit" value="Submit" />
|
||||||
|
</form>
|
||||||
Reference in New Issue
Block a user