You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

40 lines
1.3 KiB

# -*- coding: utf-8 -*-
from django.shortcuts import render
from django.contrib.auth.decorators import login_required
from django.http import Http404
from django.conf import settings
from .invoice import InvoiceViews
from .aktrabot import AktRabotViews
from .aktsverki import AktSverkiViews
from .dover import DoverViews
from .platejka import PlatejkaViews
from .nakladn import NakladnViews
from .faktura import FakturaViews
from .ajax import get_pair, get_invoices, get_tbl_items, get_client_by_invoice, toggle_doc_status
#from .sfv import SfvViews
DEBUG = getattr(settings, 'DEBUG', False)
@login_required # важно!!!
def getview(request, *args, **kwargs):
try:
views = kwargs['klass'](request) # класс с вьюхами
handler = getattr(views, kwargs['oper']) # конкретная вьюха
return handler(request, *args, **kwargs) # передать управление во вьюху и вернуть ее результат
except (KeyError, AttributeError):
if DEBUG:
raise
else:
raise Http404
# -----------------------------------------------------------------------------
@login_required
def index(request):
"""Страница со ссылками на все бух.формы."""
template_name = 'docs/index.html'
return render(request, template_name)