From a84abc0c7793b683a64356f51afd1386c622b1f2 Mon Sep 17 00:00:00 2001 From: "Denis V. Dedkov" Date: Thu, 4 Jun 2015 16:15:44 +0500 Subject: [PATCH] Table for testing --- asuzr/tables.py | 16 ++++++++++++++++ asuzr/views.py | 7 ++++++- record/urls.py | 1 + templates/asuzr/tabletest.html | 8 ++++++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 asuzr/tables.py create mode 100644 templates/asuzr/tabletest.html diff --git a/asuzr/tables.py b/asuzr/tables.py new file mode 100644 index 0000000..ce153d5 --- /dev/null +++ b/asuzr/tables.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- + +from django.utils.safestring import mark_safe +import django_tables2 as tables +from models import * + +def editable(field_name): + return '{{% load inplace_edit %}}\n\n{{% inplace_edit "record.{field}" auto_height = 1 %}}'.format(field = field_name) + +class TestTable(tables.Table): + name = tables.TemplateColumn(editable('name'),verbose_name = "Наименование") + prod_period = tables.TemplateColumn(editable('prod_period'),verbose_name = "Время производства") + + class Meta: + model = Product + attrs = {"class": "paleblue"} diff --git a/asuzr/views.py b/asuzr/views.py index d2b90fb..5e3415c 100644 --- a/asuzr/views.py +++ b/asuzr/views.py @@ -10,6 +10,8 @@ from datetime import datetime, date, timedelta import calendar from django.db.models import Count, Sum from asuzr.common import custom_date +from tables import * +from django_tables2 import RequestConfig def prod_list(request): product_list = Product.objects.all() @@ -127,7 +129,10 @@ def desreport(request): }) return HttpResponse(t.render(c)) - +def table_test(request): + table = TestTable(Product.objects.all()) + RequestConfig(request).configure(table) + return render(request, 'asuzr/tabletest.html', {'table': table, 'action': Product.objects.all()[0]}) diff --git a/record/urls.py b/record/urls.py index dfca360..a5e27b8 100644 --- a/record/urls.py +++ b/record/urls.py @@ -13,5 +13,6 @@ urlpatterns = patterns('', url(r'^orders/(?P\d+)/$', 'asuzr.views.orders'), url(r'^desreport/$', 'asuzr.views.desreport'), url(r'^admin/', include(admin.site.urls)), + url(r'^table/', 'asuzr.views.table_test'), url(r'^inplaceeditform/', include('inplaceeditform.urls')), ) diff --git a/templates/asuzr/tabletest.html b/templates/asuzr/tabletest.html new file mode 100644 index 0000000..03283a7 --- /dev/null +++ b/templates/asuzr/tabletest.html @@ -0,0 +1,8 @@ +{% extends "asuzr/base.html" %} +{% load inplace_edit %} +{% load render_table from django_tables2 %} + +{% block page %} + {% render_table table %} +{% endblock %} +