Ваяю тут один сервис на питоне, столкнулся с тем что фласк в упор не видит шаблоны из папки блюпринта.
Структура проекта:
src/
templates/
plugins/
__init__.py
test/
__init__.py
templates/
index.html
В ините plugins определен простой базовый класс, от которого наследуюсь:
from flask import Blueprint
class BasePlugin(Blueprint):
def __init__(self, name):
self.name = '.'.join(name.split('.')[-2:])
super(BasePlugin, self).__init__(
self.name,
name,
template_folder='templates'
)
В ините test наследуюсь:
from src.plugins import BasePlugin
from flask import render_template
class TestPlugin(BasePlugin):
def __init__(self):
super(TestPlugin, self).__init__(__name__)
def index(self):
return render_template('index.html')
#return self.open_resource('templates/index.html').read().decode('utf-8') # вот так работает
Собственно, фласк ломится искать index.html в src/templates/, его там не находит, и падает с ошибкой, а в src/plugins/test/templates даже и не смотрит, хотя должен.