Есть ли стандартный способ проверить, существует ли макет представления из контроллера в Rails? Я пытаюсь позволить пользователю определить макет, но сначала он должен существовать.
Вы можете использовать template_exists? какой псевдоним для существует?
Например: template_exists?("layout_name", "layouts")
template_exists?("layout_name", "layouts")
Насколько я знаю, стандартного публичного пути не существует. Вы можете использовать элементарный вызов, как это:
layouts = Dir['app/views/layouts/*'].map {|f| File.basename(f, '.html.erb') # returns 'layout' for 'layout.html.erb' }
Я думаю, что лучшим способом было бы сохранить эти значения в базе данных, чтобы пользователь мог выбирать из этого.
Вместо попытки проверить то, что было предложено в предыдущем посте.
Используйте модель макета и позвольте пользователю выбирать.