Виды подкаталогов Синатры - PullRequest
26 голосов
/ 25 января 2010

Я хочу иметь возможность получать представления Sinatra из подкаталогов ./views (например, ./views/admin).Я знаю, что вы можете установить представления следующим образом:

set :views, Proc.new { File.join(root, "templates") }

Но как мне установить это только для части файла?

Ответы [ 2 ]

61 голосов
/ 25 января 2010

Я точно не знаю, о чем вы спрашиваете, но вы можете визуализировать представление в views/admin, выполнив следующее:

erb :"admin/report"

Если вы спрашиваете, как автоматически просматривать подкаталоги views при вызове erb :report, я не уверен, как это сделать, и не думаю, что вы захотите (что произойдет, если два вида в разных каталогах имеют одно и то же имя?).

0 голосов
/ 05 мая 2019

Это должен быть слишком большой комментарий. Ответ, предоставленный Алексом, является правильным, но, конечно, это цитата из официальной документации :

Важно помнить, что шаблоны всегда должны ссылаться на символы, даже если они находятся в подкаталоге (в этом случае используйте: :'subdir/template' или 'subdir/template'.to_sym). Вы должны использовать символ, потому что иначе методы рендеринга будут визуализировать любые строки, переданные им напрямую.

...