Добавлена пробная форма для ввода даты

This commit is contained in:
Anastasia
2015-06-19 08:57:27 +05:00
parent 49b67af7b7
commit e30d66e502
5 changed files with 42 additions and 5 deletions

5
asuzr/forms.py Normal file
View File

@@ -0,0 +1,5 @@
from django import forms
from datetime import date
class DateForm (forms.Form):
date = forms.DateField(label = 'Date')

View File

@@ -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})

View File

@@ -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:

View File

@@ -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>

View File

@@ -0,0 +1,4 @@
<form action="/curr-date/" method="post">
{{ form }}
<input type="submit" value="Submit" />
</form>