2015-02-15 2 views
2

У меня есть прецедент, в котором я хотел бы иметь доступ ко всем моим шаблонам, как они есть, что означает html + erb (или любой другой обработчик шаблонов) и делать с ними что-то до их компиляции (в моем случае я хочу проверьте наличие жестко закодированных строк). Есть ли способ в Rails API подключиться к этому?Rails - программно получить шаблоны перед их компиляцией и визуализацией.

+0

В какое время вы хотите сделать эту проверку? При запуске сервера Rails или при каждом запросе HTTP? – wintermeyer

+0

На самом деле это не имеет значения. В идеале я хочу, чтобы это по команде, так на рейке или через тест. Что-то вроде MyChecker.check! что я могу позвонить, когда мне это нужно. –

ответ

2

AFAIK rails решает имена путей лениво, поэтому нет смысла, когда у вас будут «все пути». новые пути могут быть добавлены к поиску в любой момент, поэтому ваша логика приложения должна будет следить за этим.

Я думаю, что вы можете достичь того, что хотите сделать, создав свой собственный шаблонный резольвер и примените любое преобразование лениво. посмотрите на actionview/lib/action_view/template/resolver.rb и его реализации.

У книги crafting rails applications есть отличное описание процесса рендеринга и может помочь вам найти другое решение проблемы.

+0

Спасибо, phoet. Я посмотрю на эту книгу (у нас есть копия на работе) и посмотрим, что я могу придумать. –

Смежные вопросы