Наследование классов представления Pyramid с декораторами @view_defaults и @view_config
Я написал класс представления, в котором есть несколько @ view_config с предикатами, установленными для одного маршрута. Затем у меня есть подкласс, который перезаписывает пару подфункций, что влияет на то, как создается представление. Ниже приведено нечто подобное, но с упрощенным кодом.
При посещении маршрута view_a все работает нормально. При посещении маршрута view_b отображается «404 Not Found Ресурс не найден».
Кажется, @view_configs не «унаследованы» и не связаны с новым @view_default. Есть ли простой способ исправить это, или мне придется переключиться на выполнение вручнуюconfig.add_view()
?
@view_defaults(route_name='view_a', renderer='templates/views.mak')
class View_A(object):
def message(self):
return 'This is view a'
@view_config(request_method='GET')
def get(self):
return {'message': self.message()}
@view_defaults(route_name='view_b')
class View_B(View_A):
def message(self):
return 'This is view b'