Utilizando diferentes layouts erb no sinatra
Em um projeto pessoal, e possível idéia de negócio, estou utilizando o sinatra. E como engine de templates o erb.
Em um determinado momento, verifiquei a necessidade da utilização de diferentes layouts para áreas distintas do projeto. De acordo com o contexto e o gosto de cada usuário.
Como eu não gostaria de informar o layout a ser utilizado em cada um desses casos, no módulo de configurações do projeto criei os seguintes métodos:
Quando eu necessito apenas mostrar um layout de um contexto específico do cliente, eu o utilizo da seguinte forma:
Agora, quando layout é uma escolha do usuário eu utilizo o método específico para exibição do seu layout favorito:
Para os demais casos, onde o layout a ser exibido é o default, continuo utilizando da maneira tradicional para informar o erb a ser renderizado.
A idéia é simples. Se alguém souber de alguma outra maneira, fique a vontade para contribuir.