Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
def _perform_call(self, func, args):
"""Hide the traceback for everything above this method"""
# Unused variable
#__traceback_hide__ = 'before_and_this'
# Inject request object here in order to emulate Pyramid view
# callable in controllers
req = self._py_object.request
return func(req, **args)
'/app/' + module +'/templ/'
module.join(("/app/", "/templ/"))
import os
os.path.join("app", module, "templ")
...
i = t.index(':')
module = t[:i]
module_path = '/app/' + module +'/templ/'
file = t[(i+1):]
...
module, file = t.split(":")
import os, sys
def get_app_root(app):
"""Returns path to app or app name."""
if isinstance(app, (str, )):
__import__(app)
app = sys.modules[app]
return os.path.dirname(os.path.abspath(app.__file__))
tpl_path = os.path.join(get_app_root(module), 'templ')
load_template ничего не найдет, то она зачем-то вернет строку из одного пробела. Которая приведется к True, а не к False, как, видимо, ожидал автор.
Django своими руками часть 1: Собираем шаблоны для jinja2