Sinatra Sub-Directory Views

Ethan Turkeltaub picture Ethan Turkeltaub · Jan 25, 2010 · Viewed 8.6k times · Source

I want to be able to get Sinatra views from sub-directories of ./views (such as ./views/admin). I know you can set the views like so:

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

But how would I be able to set this for only part of the file?

Answer

Alex Reisner picture Alex Reisner · Jan 25, 2010

I'm not sure exactly what you're asking, but you can render a view in views/admin by doing this:

erb :"admin/report"

If you're asking how to automatically look in subdirectories of views when you call erb :report, I'm not sure how to do that, and I don't think you'd want to (what happens if two views in different dirs have the same name?).