def documentos_query(request): col = "-organismo" query = None dependencia='' usuario = '' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaDocumentoForm(request.GET) if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"documentos.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"documentos.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] if 'idusuario_creac' in request.GET: if request.GET['idusuario_creac']: filtro.append(u"idusuario_creac_id =%s"%request.GET['idusuario_creac']) usuario=request.GET['idusuario_creac'] if 'categoria' in request.GET: if request.GET['categoria']: filtro.append(u"categoria ='%s'"%request.GET['categoria']) if 'tipo' in request.GET: if request.GET['tipo']: filtro.append(u"tipo ='%s'"%request.GET['tipo']) query = Documento.objects.extra(where=filtro,select={'dependencia':"case documentos.organismo_id when 1 then (select ministerio from ministerio where nummin=documentos.dependencia) when 2 then (select odp from odp where numodp=documentos.dependencia) when 3 then (select gobernacion from gobernacion where numgob=documentos.dependencia) end"}) #.filter(nombreari__icontains=request.GET['nombreari'] if 'nombreari' in request.GET else '') tabla = DocumentoTable(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('extras/documento_consulta.html', {'formulario': formulario,'tabla':tabla,'dependencia':dependencia,'usuario':usuario}, context_instance=RequestContext(request),)
def tema_query(request): col = "-name" query = Topic.objects.all() idforum = '' if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = TopicConsultaForm(request.GET) if "name" in request.GET: query = query.filter(name__icontains=request.GET['name']).order_by(col) if "forum" in request.GET: if request.GET['forum']: query = query.filter(forum__id=request.GET['forum']) idforum = request.GET['forum'] if "categoria" in request.GET: if request.GET['categoria']: query = query.filter(forum__category__id=request.GET['categoria']) tabla = TopicTablee(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response( 'extras/tema_consulta.html', { 'formulario': formulario, 'tabla': tabla, 'mensaje': (request.GET['m'] if 'm' in request.GET else ''), 'idforum': idforum }, context_instance=RequestContext(request), )
def gobernacionquery(request): col = "-gobernacion" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultagobernacionform = ConsultaGobernacionForm(request.GET) if 'region' in request.GET and 'provincia' in request.GET: if request.GET['region'] and request.GET['provincia']: gobernaciones = Gobernacion.objects.filter(region=request.GET['region'], provincia=request.GET['provincia']).order_by(col) elif request.GET['region']: gobernaciones = Gobernacion.objects.filter(region= request.GET['region'],).order_by(col) else: gobernaciones = Gobernacion.objects.all().order_by(col) else: gobernaciones = Gobernacion.objects.all().order_by(col) tblgobernaciones = GobernacionTable(gobernaciones.order_by(col)) config.configure(tblgobernaciones) tblgobernaciones.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('dependencia/gobernacion_consulta.html', {'consultagobernacionform':consultagobernacionform, 'tabla':tblgobernaciones, 'mensaje':(request.GET['m'] if 'm' in request.GET else '')}, context_instance=RequestContext(request),)
def forum_query(request): col = "-name" query = Forum.objects.all() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ForumConsultaForm(request.GET) if "name" in request.GET: query = Forum.objects.filter( name__icontains=request.GET['name']).order_by(col) if "category" in request.GET: if request.GET['category']: query = query.filter(category__id=request.GET['category']) tabla = ForumTablee(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response( 'extras/foro_consulta.html', { 'formulario': formulario, 'tabla': tabla, 'mensaje': (request.GET['m'] if 'm' in request.GET else '') }, context_instance=RequestContext(request), )
def ariquery(request): col = "-organismo" query = None dependencia='' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaAriForm(request.GET) #if request.user.get_profile().nivel.codigo == 2: # if 'organismo' in request.GET: # if request.GET['organismo']: # filtro.append(u"actareunionintersectorial.organismo_id =%s"%request.GET['organismo']) # if 'dependencia' in request.GET: # if request.GET['dependencia']: # filtro.append(u"actareunionintersectorial.dependencia =%s"%request.GET['dependencia']) # dependencia=request.GET['dependencia'] #else: #filtro.append(u"actareunionintersectorial.organismo_id =%s"%request.user.get_profile().organismo.codigo) #filtro.append(u"actareunionintersectorial.dependencia =%s"%request.user.get_profile().dependencia) #filtro.append(u"idusuario_creac="+str(request.user.get_profile().numero)) filtro.append(u"idusuario_creac=usuario.numero") query = ActaReunionIntersectorial.objects.extra(tables=['usuario',],where=filtro,select={'usuario':'usuario.usuario','dependencia':"case actareunionintersectorial.organismo_id when 1 then (select ministerio from ministerio where nummin=actareunionintersectorial.dependencia) when 2 then (select odp from odp where numodp=actareunionintersectorial.dependencia) when 3 then (select gobernacion from gobernacion where numgob=actareunionintersectorial.dependencia) end"}).filter(nombreari__icontains=request.GET['nombreari'] if 'nombreari' in request.GET else '') #if 'nombreari' in request.GET: # query.filter(nombreari__icontains=request.GET['nombreari']) tabla = AriTable(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('extras/ari_consulta.html', {'formulario':formulario,'tabla':tabla,'dependencia':dependencia,}, context_instance=RequestContext(request),)
def make_table(self): config = RequestConfig(self.request, paginate={'per_page': 10}) results = self.table_class(self.object_list) order_by = self.form.cleaned_data.get('order_by') if order_by in ('last_modified','licence'): order_by = '-'+order_by results.order_by = order_by config.configure(results) return results
def make_table(self): config = RequestConfig(self.request, paginate={'per_page': 5}) results = ProjectTable(self.object_list) #order_by = self.form.cleaned_data.get('order_by') order_by = self.request.GET.get('order_by','num_items') if order_by in ('num_items',): order_by = '-'+order_by results.order_by = order_by config.configure(results) return results
def ministerioquery(request): col = "-ministerio" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultaministerioform = ConsultaMinisterioForm(request.GET) if 'ministerio' in request.GET: ministerios = Ministerio.objects.filter(ministerio__icontains=request.GET['ministerio']).order_by(col) else: ministerios = Ministerio.objects.all().order_by(col) tblministerios = MinisterioTable(ministerios.order_by(col)) config.configure(tblministerios) tblministerios.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('dependencia/ministerio_consulta.html', {'consultaministerioform':consultaministerioform,'tabla':tblministerios,'usuario':request.session['nombres'],'fecha':request.session['login_date']}, context_instance=RequestContext(request),)
def regionquery(request): col = "-region" regiones = None if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultaregionform = ConsultaRegionForm(request.GET) if "region" in request.GET: regiones = Region.objects.filter(region__icontains=request.GET['region']).order_by(col) if regiones is None: regiones = Region.objects.all() tblregiones = RegionTable(regiones.order_by(col)) config.configure(tblregiones) tblregiones.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('ubigeo/region_consulta.html', {'consultaregionform':consultaregionform,'tblregiones':tblregiones,'usuario':request.session['nombres'],'fecha':request.session['login_date']}, context_instance=RequestContext(request),)
def categoria_query(request): col = "-name" query = None if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = CategoryConsultaForm(request.GET) if "name" in request.GET: query = Category.objects.filter(name__icontains=request.GET['name']).order_by(col) if query is None: query = Category.objects.all() tabla = CategoryTable(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('extras/categoria_consulta.html', {'formulario':formulario,'tabla':tabla,'mensaje':(request.GET['m'] if 'm' in request.GET else '')}, context_instance=RequestContext(request),)
def get(self, request): transactionDetails_list = TransactionDetails.objects.all() transactionDetails_filter = TransactionDetailsFilter( request.GET, queryset=transactionDetails_list) #render reset and clear button dynamically has_filter = any( field in request.GET for field in set(transactionDetails_filter.get_fields())) helper = transactionDetails_filter.form.helper if has_filter: button_html = crispy_HTML( '<a href="{% url "accounts:transaction_search" %}" class="btn btn-warning">Reset</a>' ) helper.layout[0][1][0].append(button_html) else: helper.layout[0][1][0].append( Reset('reset', "Clear", css_class='btn btn-warning')) #populate result table with pagination result_table = TransactionDetailSearchTable( transactionDetails_filter.qs) RequestConfig(request, paginate={ "per_page": 5 }).configure(result_table) return render(request, self.template_name, { 'filter': transactionDetails_filter, 'table': result_table, })
def test_localization_of_pagination_strings(self): class Table(tables.Table): foo = tables.Column(verbose_name="my column") bar = tables.Column() class Meta: default = "---" table = Table(map(lambda x: [x, x + 100], range(40))) request = build_request("/?page=2") RequestConfig(request, paginate={"per_page": 10}).configure(table) with translation_override("en"): html = table.as_html(request) self.assertIn("previous", html) self.assertIn("next", html) with translation_override("nl"): html = table.as_html(request) self.assertIn("vorige", html) self.assertIn("volgende", html) with translation_override("fr"): html = table.as_html(request) self.assertIn("précédent", html) self.assertIn("suivant", html)
def test_bootstrap_template(self): table = BootstrapTable(MEMORY_DATA) request = build_request("/") RequestConfig(request).configure(table) template = Template( "{% load django_tables2 %}{% render_table table %}") html = template.render(Context({"request": request, "table": table})) root = parse(html) self.assertEqual(root.find(".//table").attrib, {"class": "table"}) self.assertEqual(len(root.findall(".//thead/tr")), 1) self.assertEqual(len(root.findall(".//thead/tr/th")), 4) self.assertEqual(len(root.findall(".//tbody/tr")), 2) self.assertEqual(len(root.findall(".//tbody/tr/td")), 8) self.assertEqual( root.find('.//ul[@class="pagination"]/li[2]/a').text.strip(), "2") # make sure the link is prefixed self.assertEqual( root.find('.//ul[@class="pagination"]/li[@class="next"]/a').get( "href"), "?bootstrap-page=2", )
def render_table_db_queries(): render = lambda **kw: ( Template('{% load django_tables2 %}{% render_table table %}').render( Context(kw))) with database(): Person.objects.create(first_name="brad", last_name="ayers") Person.objects.create(first_name="stevie", last_name="armstrong") class PersonTable(tables.Table): class Meta: model = Person per_page = 1 with queries(count=2): # one query to check if there's anything to display: .count() # one query for page records: .all()[start:end] render(table=PersonTable(Person.objects.all())) with queries(count=2): # one query for pagination: .count() # one query for page records: .all()[start:end] request = build_request('/') table = PersonTable(Person.objects.all()) RequestConfig(request).configure(table) render(table=table, request=request)
def sortidesAllList(request): credentials = tools.getImpersonateUser(request) (user, _) = credentials professor = User2Professor(user) sortides = list(Sortida.objects.all().distinct()) table = Table2_Sortides(data=sortides, origen="All") table.order_by = '-calendari_desde' RequestConfig(request, paginate={ "paginator_class": DiggPaginator, "per_page": 10 }).configure(table) url = r"{0}{1}".format(settings.URL_DJANGO_AULA, reverse('sortides__sortides__ical')) return render(request, 'table2.html', { 'table': table, 'url': url, })
def sortidesMevesList(request): credentials = tools.getImpersonateUser(request) (user, _) = credentials professor = User2Professor(user) q_professor_proposa = Q(professor_que_proposa=professor) q_professors_responsables = Q(professors_responsables=professor) q_professors_acompanyants = Q(altres_professors_acompanyants=professor) sortides = (Sortida.objects.filter(q_professor_proposa | q_professors_responsables | q_professors_acompanyants).distinct()) table = Table2_Sortides(list(sortides), origen="Meves") table.order_by = '-calendari_desde' RequestConfig(request, paginate={ "paginator_class": DiggPaginator, "per_page": 10 }).configure(table) return render(request, 'lesMevesSortides.html', { 'table': table, })
def get(self, request): transactionDetails_list = TransactionDetails.objects.all() transactionDetails_filter = MonthlyReportFilter( request.GET, queryset=transactionDetails_list) #render reset and clear button dynamically has_filter = any( field in request.GET for field in set(transactionDetails_filter.get_fields())) helper = transactionDetails_filter.form.helper if has_filter: button_html = crispy_HTML( '<a href="{% url "accounts:transaction_report" %}" class="btn btn-warning">Reset</a>' ) helper.layout[0][1][0].append(button_html) else: helper.layout[0][1][0].append( Reset('reset', "Clear", css_class='btn btn-warning')) #populate result table with pagination result_table = MonthlyReportTable(transactionDetails_filter.qs) RequestConfig(request).configure(result_table) date_str = date.today().strftime("%d-%m-%Y") return render( request, self.template_name, { 'filter': transactionDetails_filter, 'table': result_table, 'date': date_str, })
def ajax_modify_detalle_venta_prod(request, pk, action): detalle_venta_prod = get_object_or_404(DetalleVentaProd, id_detalle_venta=pk) product = detalle_venta_prod.id_producto_fk instance = detalle_venta_prod.id_reserva_fk if action == 'remove': detalle_venta_prod.cantidad -= 1 product.stock += 1 if detalle_venta_prod.cantidad < 1: detalle_venta_prod.cantidad = 1 if action == 'add': detalle_venta_prod.cantidad += 1 product.stock -= 1 product.save() detalle_venta_prod.save() if action == 'delete': detalle_venta_prod.delete() data = dict() instance.refresh_from_db() detalle_venta_prod = DetVentaProdTable(instance.detalle_venta_prod.all()) RequestConfig(request).configure(detalle_venta_prod) data['result'] = render_to_string(template_name='include/order_container.html', request=request, context={ 'instance': instance, 'detalle_venta_prod': detalle_venta_prod } ) return JsonResponse(data)
def get_context_data(self, **kwargs): context = super(FactureDetailView, self).get_context_data(**kwargs) table = LigneFactureTable(LigneFacture.objects.filter(facture=self.kwargs.get('pk'))) RequestConfig(self.request, paginate={"per_page": 2}).configure(table) context['table'] = table return context
def leaderboard(request): """View to handle the Delete Workout form Arguments: request {Request} -- The Request from the browser Returns: rendered template -- Rendered templates with 3 tables (sorted by descending distance) """ try: earned_awards = Award.objects.filter(user=request.user) except ObjectDoesNotExist: earned_awards = {} leaders_r = Profile.objects.filter(category="runner").order_by('-distance') total_workouts = Workout.objects.all() total_kms = 0 for workout in total_workouts: total_kms += workout.distance table_leaders_r = ProfileTable(leaders_r, prefix="leaders-r-") RequestConfig(request, paginate={ "per_page": 10 }).configure(table_leaders_r) return render( request, 'ic_marathon_app/leaderboard.html', { 'leaders_r': table_leaders_r, 'leaders_r_c': len(leaders_r), 'earned_awards': earned_awards, 'total_kms': total_kms })
def test_render_table_db_queries(self): """ Paginated tables should result in two queries: - one query for pagination: .count() - one query for records on the current page: .all()[start:end] """ Person.objects.create(first_name="brad", last_name="ayers") Person.objects.create(first_name="davina", last_name="adisusila") class PersonTable(tables.Table): class Meta: model = Person per_page = 1 request = build_request("/") with self.assertNumQueries(2): request = build_request("/") table = PersonTable(Person.objects.all()) RequestConfig(request).configure(table) html = Template( "{% load django_tables2 %}{% render_table table %}").render( Context({ "table": table, "request": request })) self.assertIn("brad", html) self.assertIn("ayers", html)
def lookup(request): print("form") form = SearchForm(request.GET or None) donationTable = None data = None labels = None donationsEmpty = False average = None mode = None median = None username = None def calcDonationsPerOrg(username): userDonations = usernameToUserDonations(username) orgToTotalDonations = dict() for donation in userDonations: orgName = donation.donateto.organization_name orgToTotalDonations[orgName] = orgToTotalDonations.get( orgName, 0) + donation.amount return orgToTotalDonations def calcAvgDonationAmount(userDonations): print(userDonations) return round(statistics.mean(userDonations), 2) def calcModeAmount(userDonations): return max(userDonations, key=userDonations.count) def calcMedianAmount(userDonations): return statistics.median(userDonations) if form.is_valid(): username = form.cleaned_data['user_search'] donations = usernameToUserDonations(username) donationTable = DonationTable(donations) donationsEmpty = (donations.count() == 0) RequestConfig(request).configure(donationTable) if not donationsEmpty: # calc total donations orgToTotalDonations = calcDonationsPerOrg(username) data = [float(val) for val in list(orgToTotalDonations.values())] labels = list(orgToTotalDonations.keys()) donationsList = [d['amount'] for d in donations.values()] average = calcAvgDonationAmount(donationsList) mode = calcModeAmount(donationsList) median = calcMedianAmount(donationsList) context = { 'form': form, 'donationsEmpty': donationsEmpty, 'donationTable': donationTable, 'data': data, 'labels': labels, 'average': average, 'mode': mode, 'median': median, 'username': username, } return render(request, "microdollars/lookup.html", context)
def get_context_data(self, **kwargs): context = super(FournisseursView, self).get_context_data(**kwargs) queryset = Fournisseur.objects.all() table = FournisseurTable(queryset) RequestConfig(self.request, paginate={"per_page": 10}).configure(table) context['table'] = table return context
def get_table(self, **kwargs): table = super(PagedFilteredTableView, self).get_table() RequestConfig(self.request, paginate={ 'page': self.kwargs['page'], "per_page": self.paginate_by }).configure(table) return table
def get_context_data(self, **kwargs): context = super(FactureView, self).get_context_data(**kwargs) table = FactureTable(Facture.objects.filter(client_id=self.kwargs.get('pk')).annotate(Total=Sum(F("lignes__produit__prix") * F("lignes__qte"),output_field=FloatField()))) RequestConfig(self.request, paginate={"per_page": 2}).configure(table) context['table'] = table context['object'] = 'Facture' context['title'] = 'La liste des factures:' return context
def get_context_data(self, **kwargs): context = super(FacturesView, self).get_context_data(**kwargs) queryset = Facture.objects.values('id', 'date') table = FactureListTable(queryset) RequestConfig(self.request, paginate={"per_page": 10}).configure(table) context['table'] = table return context
def query_caso_exito(request): col = "-organismo" query = None dependencia='' query = CasoExito.objects.all() #print query[0].organismo_id if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaCeForm(request.GET) if 'organismo' in request.GET: if request.GET['organismo']: query = query.filter(organismo=request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: dependencia=request.GET['dependencia'] query = query.filter(dependencia=request.GET['dependencia']) if 'fechaini' in request.GET: #and 'fechafin' in request.GET: start_date = None #end_date = None try: start_date = ((request.GET['fechaini']) and datetime.strptime(request.GET['fechaini'],"%d/%m/%Y") or None) # end_date = ((request.GET['fechafin']) and # datetime.strptime(request.GET['fechafin'],"%d/%m/%Y") or None) except: pass if start_date: query = query.filter(fecha__gte=start_date) # if start_date and end_date: # query = query.filter(fecha__range=(start_date, end_date)) # elif start_date: # query = query.filter(fecha__gte=start_date) # elif end_date: # query = query.filter(fecha__lte=end_date) query = query.extra(select={'dependencia':"""case tbl_caso_exito.organismo_id when 1 then (select ministerio from ministerio where nummin=tbl_caso_exito.dependencia) when 2 then (select odp from odp where numodp=tbl_caso_exito.dependencia) when 3 then (select gobernacion from gobernacion where numgob=tbl_caso_exito.dependencia) end"""}) tabla = CeTable(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('prensa/ce_consulta.html', {'formulario':formulario,'tabla':tabla,'dependencia':dependencia,}, context_instance=RequestContext(request),)
def make_table(self): project = self.get_project() folder = self.get_folder() items = folder.items.all() if folder else project.items.filter( folder=None) config = RequestConfig(self.request, paginate={'per_page': 100}) results = BrowseProjectTable(items, order_by_field='order_by') order_by = self.request.GET.get('order_by', 'name') if order_by in ('last_modified', 'licence'): order_by = '-' + order_by results.order_by = order_by config.configure(results) return results
def get_table(self): kwargs = self.table_kwargs self.table = self.build_table_class()(**kwargs) RequestConfig( self.request, paginate=self.table_pagination, ).configure(self.table) return self.table
def user_panel(request): table = user_table(Subscriber.objects.all()) users = Subscriber.objects.all() RequestConfig(request, paginate={"per_page": 10}).configure(table) context = { "table": table, "users": users } return render(request, "user_panel.html", context=context)
def accession_to_table(accessions, request, obj_per_page=7): if accessions: accession_table = AccessionTable(accessions, template='table.html', prefix='accession-') RequestConfig(request, paginate={'per_page': obj_per_page}).configure( accession_table) else: accession_table = None return accession_table
def showfile(request): allfiles = GenotypeUploads.objects.all() table = UploadRecords(allfiles, order_by="-uploaded_at") RequestConfig(request).configure(table) return render(request, 'Inventory/records.html', { 'allfiles': allfiles, 'table': table })
def get(self, request): filt = self.filter_class(request.GET) table = self.table_class(filt.qs) RequestConfig(request).configure(table) return render(request, f"lab/filter_table.html", { 'activity': self.activity, 'filter': filt, 'table': table, })
def plant_to_table(plants, request, obj_per_page=7): if plants: plant_table = PlantTable(plants, template='table.html', prefix='plant-') RequestConfig(request, paginate={'per_page': obj_per_page}).configure( plant_table) else: plant_table = None return plant_table
def cross_to_table(cross_exps, request, obj_per_page=7): if cross_exps: cross_exps_table = CrossTable(cross_exps, template='table.html', prefix='cross_exps-') RequestConfig(request, paginate={'per_page': obj_per_page}).configure( cross_exps_table) else: cross_exps_table = None return cross_exps_table
def documentos_query(request): col = "-organismo" query = None dependencia='' usuario = '' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) #formulario = ConsultaDocumentoForm(request.GET) tabla = ReporteTable(Reporte.objects.all()) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('home/consultar_reporte.html', {#'formulario': formulario, 'tabla':tabla, 'dependencia':dependencia, 'usuario':usuario}, context_instance=RequestContext(request),)
def seedlot_to_table(seed_lots, request, obj_per_page=7): if seed_lots: seedlot_table = SeedLotTable(seed_lots, template='table.html', prefix='seed_lot-') RequestConfig(request, paginate={'per_page': obj_per_page}).configure( seedlot_table) else: seedlot_table = None return seedlot_table
def get_context_data(self, **kwargs): context = super(ClientFactureList, self).get_context_data(**kwargs) list_facture = Facture.objects.filter(client=self.kwargs.get('pk')) table = ClientFactureTable(list_facture) print(list_facture) RequestConfig(self.request, paginate={"per_page": 2}).configure(table) context['table'] = table return context
def get_table(self): kwargs = self.table_kwargs kwargs.update(data=self.object_list) self.table = self.build_table_class()(**kwargs) RequestConfig( self.request, paginate=self.table_pagination, ).configure(self.table) return self.table
def ridges(request): order_by = 'name' qs = Ridge.objects.all().order_by(order_by) f = RidgeFilter(request.GET, queryset=qs) table = RidgeTable(f.qs) RequestConfig(request, paginate={"per_page": 100}).configure(table) return render(request, 'Routes/ridges.html', {'table': table})
def data_management_view(request): table = Berita_Tabel(Tabel_Berita.objects.filter(user_id=request.user)) RequestConfig(request, paginate={'per_page': 10}).configure(table) export_format = request.GET.get('_export', None) pks = request.GET.getlist('amend') #mengecek tombol mana yang dipilih user if 'delete' in request.GET: sel = Tabel_Berita.objects.filter(pk__in=pks) sel.delete() if 'mind_map' in request.GET: maps = Tabel_Berita.objects.filter(pk__in=pks) list1 = [] for row in maps: list1.append({ 'judul_berita': row.judul_berita, 'konten_berita': row.konten_berita }) return render(request, 'crawling_mindmap.html', {'list_news1': list1}) if 'summarizer' in request.GET: maps = Tabel_Berita.objects.filter(pk__in=pks) list1 = [] for row in maps: list1.append({ 'judul_berita': row.judul_berita, 'konten_berita': row.konten_berita }) return render(request, 'crawling_summarizer.html', {'list_news1': list1}) if 'preprocess' in request.GET: mapss = Tabel_Berita.objects.filter(pk__in=pks) list2 = [] for row in mapss: list2.append({ 'id_berita': row.id_berita, 'judul_berita': row.judul_berita, 'konten_berita': row.konten_berita }) return render(request, 'crawling_preprocess.html', {'list_news1': list2}) if 'word_cloud' in request.GET: vis = Tabel_Berita.objects.filter(pk__in=pks) viss = [] for row in vis: viss.append({'konten_berita': row.konten_berita}) return render(request, 'wordcloud_universal.html', {'list_news1': viss}) selected = Berita_Tabel(Tabel_Berita.objects.filter(pk__in=pks)) if TableExport.is_valid_format(export_format): exporter = TableExport(export_format, selected, exclude_columns=('amend', 'user_id', 'id_berita')) return exporter.response('table.{}'.format(export_format)) return render(request, 'data_management.html', {'table': table})
def provinciaquery(request): col = "-provincia" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultaprovinciaform = ConsultaProvinciaForm(request.GET) if 'region' in request.GET and 'provincia' in request.GET: if (request.GET['region'] and request.GET['provincia']) or request.GET['region']: provincias = Provincia.objects.filter(provincia__icontains=request.GET['provincia'], region=request.GET['region']).order_by(col) elif request.GET['provincia']: provincias = Provincia.objects.filter(provincia__icontains=request.GET['provincia'],).order_by(col) else: provincias = Provincia.objects.all().order_by(col) else: provincias = Provincia.objects.all().order_by(col) tblprovincias = ProvinciaTable(provincias.order_by(col)) config.configure(tblprovincias) tblprovincias.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('ubigeo/provincia_consulta.html', {'consultaprovinciaform':consultaprovinciaform,'tabla':tblprovincias,'usuario':request.session['nombres'],'fecha':request.session['login_date']}, context_instance=RequestContext(request),)
def get_context_data(self, **kwargs): context = super(CommandeDetailView, self).get_context_data(**kwargs) commande = Commande.objects.get(id=self.kwargs.get('pk')) table = LigneCommandeTable(LigneCommande.objects.filter(commande=commande)) RequestConfig(self.request, paginate={"per_page": 5}).configure(table) context['table'] = table context['object'] = 'LigneCommande' context['title'] = 'La liste des produits de la commande : ' + str(self.get_object()) return context
def odpquery(request): col = "-odp" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultaodpform = ConsultaOdpForm(request.GET) if 'nummin' in request.GET and 'odp' in request.GET: if (request.GET['nummin'] and request.GET['odp']) or request.GET['nummin']: odps = Odp.objects.filter(odp__icontains=request.GET['odp'],nummin=request.GET['nummin']).order_by(col) elif request.GET['odp']: odps = Odp.objects.filter(odp__icontains=request.GET['odp']).order_by(col) else: odps = Odp.objects.all() else: odps = Odp.objects.all() tblodps = OdpTable(odps.order_by(col)) config.configure(tblodps) tblodps.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('dependencia/odp_consulta.html', {'consultaodpform':consultaodpform,'tabla':tblodps,'usuario':request.session['nombres'],'fecha':request.session['login_date']}, context_instance=RequestContext(request),)
def pgcs_apor_query(request): col = "-organismo" query = None dependencia = "" filtro = list() if "2-sort" in request.GET: col = request.GET["2-sort"] config = RequestConfig(request) formulario = ConsultaPgcsForm(request.GET) if "organismo" in request.GET: if request.GET["organismo"]: filtro.append(u"pgcs.organismo_id =%s" % request.GET["organismo"]) if "dependencia" in request.GET: if request.GET["dependencia"]: filtro.append(u"pgcs.dependencia =%s" % request.GET["dependencia"]) dependencia = request.GET["dependencia"] filtro.append(u"idusuario_creac=usuario.numero") filtro.append(u"tipopgcs_id=2") query = Pgcs.objects.extra( tables=["usuario"], where=filtro, select={ "usuario": "usuario.usuario", "dependencia": "case pgcs.organismo_id when 1 then (select ministerio from ministerio where nummin=pgcs.dependencia) when 2 then (select odp from odp where numodp=pgcs.dependencia) when 3 then (select gobernacion from gobernacion where numgob=pgcs.dependencia) end", }, ) tabla = PgcsTable(query.order_by(col)) config.configure(tabla) tabla.paginate(page=request.GET.get("page", 1), per_page=6) return render_to_response( "comunicacion/pgcs_consulta.html", { "formulario": formulario, "tabla": tabla, "usuario": request.session["nombres"], "fecha": request.session["login_date"], "dependencia": dependencia, "aporte": "aporte", }, context_instance=RequestContext(request), )
def digquery(request): col = "-organismo" query = None dependencia='' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaDIGForm(request.GET) if request.user.get_profile().nivel.codigo == 2: if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"documentointeresgeneral.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"documentointeresgeneral.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: filtro.append(u"documentointeresgeneral.organismo_id =%s"%request.user.get_profile().organismo.codigo) filtro.append(u"documentointeresgeneral.dependencia =%s"%request.user.get_profile().dependencia) filtro.append(u"idusuario_creac="+str(request.user.get_profile().numero)) filtro.append(u"idusuario_creac=usuario.numero") filtro.append(u"documentointeresgeneral.organismo_id=organismo.codigo") try: query = DocumentoInteresGeneral.objects.extra(tables=['usuario','organismo'],where=filtro,select={'organismo':'organismo.nombre','usuario':'usuario.usuario','dependencia':"case documentointeresgeneral.organismo_id when 1 then (select ministerio from ministerio where nummin=documentointeresgeneral.dependencia) when 2 then (select odp from odp where numodp=documentointeresgeneral.dependencia) when 3 then (select gobernacion from gobernacion where numgob=documentointeresgeneral.dependencia) end",'tipomis1':"SUBSTRING_INDEX(archmis1, '.', -1)",'tipomis2':"SUBSTRING_INDEX(archmis2, '.', -1)",'tipomis3':"SUBSTRING_INDEX(archmis3, '.', -1)",'tipoaca1':"SUBSTRING_INDEX(archaca1, '.', -1)",'tipoaca2':"SUBSTRING_INDEX(archaca2, '.', -1)",'tipoaca3':"SUBSTRING_INDEX(archaca3, '.', -1)",'tipobue1':"SUBSTRING_INDEX(archbue1, '.', -1)",'tipobue2':"SUBSTRING_INDEX(archbue2, '.', -1)",'tipobue3':"SUBSTRING_INDEX(archbue3, '.', -1)"}).order_by(col).values('organismo','dependencia','fec_creac','usuario','dependencia','archmis1','archmis2','archmis3','archaca1','archaca2','archaca3','archbue1','archbue2','archbue3','tipomis1','tipomis2','tipomis3','tipoaca1','tipoaca2','tipoaca3','tipobue1','tipobue2','tipobue3') data = list() dmg = dict() for mg in query: for ar in ('mis','aca','bue'): for a in range(1,4): if mg['arch'+ar+str(a)]: dmg = {'organismo':mg['organismo'],'dependencia':mg['dependencia'],'fec_creac':mg['fec_creac'],'usuario':mg['usuario'],'Descargar':mg['arch'+ar+str(a)],'TipoArchivo':mg['tipo'+ar+str(a)],'Tipo':ar.upper()} data.append(dmg) tabla = DIGTable(data) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('extras/dig_consulta.html', {'formulario':formulario,'tabla':tabla,'dependencia':dependencia,}, context_instance=RequestContext(request),) except: raise Http404
def userquery(request, nivel): col = "-nombres" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultausuarioform = ConsultaUsuarioForm(request.GET) filtro = list() usuarios = None dependencia=0 if ('nombres' in request.GET and 'organismo' in request.GET and 'estado' in request.GET and 'apellidos' in request.GET) or 'dependencia' in request.GET: if request.GET['nombres']: usuarios = Usuario.objects.filter(nombres__icontains=request.GET['nombres']) if request.GET['organismo']: filtro.append(u"organismo_id =%s"%request.GET['organismo']) if request.GET['estado']: filtro.append(u"estado_id =%s"%request.GET['estado']) if request.GET['apellidos']: if usuarios: usuarios = usuarios.filter(apellidos__icontains=request.GET['apellidos']) else: usuarios = Usuario.objects.filter(apellidos__icontains=request.GET['apellidos']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: usuarios = Usuario.objects.all() filtro.append(u'numero >0') filtro.append(u'nivel_id = '+nivel) if usuarios is None: usuarios = Usuario.objects.extra(where=filtro) else: usuarios = usuarios.extra(where=filtro) usuarios = usuarios.extra(select={'dependencia':"case organismo_id when 1 then (select ministerio from ministerio where nummin=dependencia) when 2 then (select odp from odp where numodp=dependencia) when 3 then (select gobernacion from gobernacion where numgob=dependencia) end"}) tblusuarios = UsuarioTable(usuarios.order_by(col)) config.configure(tblusuarios) tblusuarios.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('usuario/usuario_consulta.html', {'consultausuarioform':consultausuarioform,'tabla':tblusuarios,'dependencia':dependencia,'nivel':nivel,'mensaje':(request.GET['m'] if 'm' in request.GET else '')}, context_instance=RequestContext(request),)
def eventoquery(request): form = EventoConsultaForm(request.GET) usuario = request.user.get_profile() query = Evento.objects.all() if 'fechaini' in request.GET: start_date = None try: start_date = ((request.GET['fechaini']) and datetime.strptime(request.GET['fechaini'],"%d/%m/%Y") or None) except: pass if start_date: query = query.filter(fec_inicio=start_date) #if start_date and end_date: # query = query.filter(fec_inicio__gte=start_date, fec_termin__lte= end_date) #elif start_date: # query = query.filter(fec_inicio__gte=start_date) #elif end_date: # query = query.filter(fec_termin__lte=end_date) if request.GET.get('titulo'): query = query.filter(titulo__icontains=request.GET.get('titulo')) if request.GET.get('organismo') and request.GET.get('dependencia'): query = query.filter(organismo__codigo = request.GET.get('organismo'), dependencia = request.GET.get('dependencia')) if request.GET.get('organismo'): query = query.filter(organismo__codigo = request.GET.get('organismo')) if request.GET.get('region') and request.GET.get('provincia') and request.GET.get('distrito'): query = query.filter(region = request.GET.get('region'), provincia = request.GET.get('provincia'), distrito = request.GET.get('distrito')) elif request.GET.get('region') and request.GET.get('provincia'): query = query.filter(region = request.GET.get('region'), provincia = request.GET.get('provincia')) elif request.GET.get('region'): query = query.filter(region = request.GET.get('region')) #query = query.filter(organismo__codigo = usuario.organismo_id, # dependencia=usuario.dependencia) table_eventos = EventoTable(query) config = RequestConfig(request,paginate={"per_page": 10}) config.configure(table_eventos) return render_to_response('calendar/consulta_actividad.html', {'form':form,'table_eventos':table_eventos},context_instance=RequestContext(request))
def mgquery(request): col = "-organismo" query = None dependencia='' filtro = list() if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) formulario = ConsultaMGForm(request.GET) if request.user.get_profile().nivel.codigo == 2: if 'organismo' in request.GET: if request.GET['organismo']: filtro.append(u"materialgrafico.organismo_id =%s"%request.GET['organismo']) if 'dependencia' in request.GET: if request.GET['dependencia']: filtro.append(u"materialgrafico.dependencia =%s"%request.GET['dependencia']) dependencia=request.GET['dependencia'] else: filtro.append(u"materialgrafico.organismo_id =%s"%request.user.get_profile().organismo.codigo) filtro.append(u"materialgrafico.dependencia =%s"%request.user.get_profile().dependencia) filtro.append(u"idusuario_creac="+str(request.user.get_profile().numero)) filtro.append(u"idusuario_creac=usuario.numero") filtro.append(u"materialgrafico.organismo_id=organismo.codigo") try: query = MaterialGrafico.objects.extra(tables=['usuario','organismo'],where=filtro,select={'organismo':'organismo.nombre','usuario':'usuario.usuario','dependencia':"case materialgrafico.organismo_id when 1 then (select ministerio from ministerio where nummin=materialgrafico.dependencia) when 2 then (select odp from odp where numodp=materialgrafico.dependencia) when 3 then (select gobernacion from gobernacion where numgob=materialgrafico.dependencia) end",'tipo1':"SUBSTRING_INDEX(arcmg1, '.', -1)",'tipo2':"SUBSTRING_INDEX(arcmg2, '.', -1)",'tipo3':"SUBSTRING_INDEX(arcmg3, '.', -1)",'tipo4':"SUBSTRING_INDEX(arcmg4, '.', -1)",'tipo5':"SUBSTRING_INDEX(arcmg5, '.', -1)",'tipo6':"SUBSTRING_INDEX(arcmg6, '.', -1)",'tipo7':"SUBSTRING_INDEX(arcmg7, '.', -1)",'tipo8':"SUBSTRING_INDEX(arcmg8, '.', -1)"}).order_by(col).values('organismo','dependencia','fec_creac','usuario','dependencia','arcmg1','arcmg2','arcmg3','arcmg4','arcmg5','arcmg6','arcmg7','arcmg8','tipo1','tipo2','tipo3','tipo4','tipo5','tipo6','tipo7','tipo8') data = list() dmg = dict() for mg in query: for a in range(1,9): if mg['arcmg'+str(a)]: dmg = {'organismo':mg['organismo'],'dependencia':mg['dependencia'],'fec_creac':mg['fec_creac'],'usuario':mg['usuario'],'Descargar':mg['arcmg'+str(a)],'Tipo':mg['tipo'+str(a)]} data.append(dmg) tabla = MGTable(data) config.configure(tabla) tabla.paginate(page=request.GET.get('page', 1), per_page=6) return render_to_response('extras/mg_consulta.html', {'formulario':formulario,'tabla':tabla,'dependencia':dependencia,}, context_instance=RequestContext(request),) except: raise Http404
def distritoquery(request): col = "-distrito" if "2-sort" in request.GET: col = request.GET['2-sort'] config = RequestConfig(request) consultadistritoform = ConsultaDistritoForm(request.GET) if 'region' in request.GET and 'provincia' in request.GET and 'distrito' in request.GET: print 'paso uno' print request.GET['region'] print request.GET['provincia'] if request.GET['region'] and request.GET['provincia'] and request.GET['distrito']: distritos = Distrito.objects.filter(distrito__icontains=request.GET['distrito'], provincia__numpro=request.GET['provincia'], region=request.GET['region']).order_by(col) elif request.GET['region'] and request.GET['provincia']: distritos = Distrito.objects.filter(provincia__numpro=request.GET['provincia'], region__numreg=request.GET['region']).order_by(col) elif request.GET['region'] and request.GET['distrito']: distritos = Distrito.objects.filter(distrito__icontains=request.GET['distrito'], region__numreg=request.GET['region']).order_by(col) elif request.GET['region']: distritos = Distrito.objects.filter(region__numreg=request.GET['region']).order_by(col) elif request.GET['distrito']: distritos = Distrito.objects.filter(distrito__icontains=request.GET['distrito']).order_by(col) else: distritos = Distrito.objects.all().order_by(col) else: distritos = Distrito.objects.all().order_by(col) lista = list() for d in distritos: provincia = Provincia.objects.get(numpro=d.provincia_id, region=d.region) dic = {'numdis': d.numdis, 'region': d.region, 'provincia': provincia, 'distrito': d.distrito, 'estado': d.estado } lista.append(dic) distritos = lista tbldistritos = DistritoTable(distritos) config.configure(tbldistritos) tbldistritos.paginate(page=request.GET.get('page',1), per_page=6) return render_to_response('ubigeo/distrito_consulta.html', {'consultadistritoform':consultadistritoform,'tabla':tbldistritos,'mensaje':(request.GET['m'] if 'm' in request.GET else '')}, context_instance=RequestContext(request),)
def product_list(request): #f = ProductFilter(request.GET, queryset=Product.objects.all()) config = RequestConfig(request) f = ProductTable(Product.objects.all(), prefix="1-") config.configure(f) return render(request, 'project/query.html', {'table': f})
def make_table(self): config = RequestConfig(self.request, paginate={'per_page': 10}) results = self.table_class(self.object_list) config.configure(results) return results