Я создаю модульное приложение Padrino для монтирования нескольких приложений.Совместное использование фильтров между приложениями
Я монтаж базового приложения для /
class BaseApp < Padrino::Application
...
end
Я тогда монтаж других appilications других конечных точек, таких как /clients
и эти приложения наследуют от базового приложения:
class ClientsApp < BaseApp
...
end
Это Наследование позволяет мне определить все мои настройки, обработку ошибок и любое включенное промежуточное ПО стойки в app.rb
для класса BaseApp
.
Пока все хорошо. Но я также хотел бы поделиться before
и after
маршрутизации между приложениями. Например, в моем BaseApp
кода контроллера я хочу сделать это:
BaseApp.controller do
before do
...
end
after do
...
end
get :index do
...
end
end
Вместо того, чтобы повторять эти фильтры в моем ClientsApp
кода контроллера, например, так:
ClientsApp.controller do
before do
...
end
after do
...
end
get :index do
...
end
end
Есть в любом случае я могу высыхаю это код и указать фильтры один раз в BaseApp
и у вас их как-то унаследовали? Я понимаю, что эти фильтры - это вызовы методов, а не методы.
Спасибо!
Спасибо, но не работает - 'NoMethodError: неопределенный метод 'фильтров =' для ClientsApp: Class' –
проверить обновленный код – DAddYE
Спасибо. Обновленный код больше не выдает ошибку, но все маршруты в подклассе теперь возвращают 404. Это как если бы маршруты были перезаписаны/потеряны или что-то в этом роде. Любые другие идеи? –