Мне также очень нравится наследование шаблонов django, но оно недоступно, по крайней мере, для sinatra.
В книге sinatra объясняется, как можно использовать layout.erb
для определения стандартного макета страницы:
Вам просто нужно определить views/layout.erb
файл с чем-то вроде:
<html>
<head>..</head>
<body>
<%= yield %>
</body>
</html>
А затем, например, назовите свой шаблон erb с erb :index
. Sinatra отобразит оба шаблона и включит содержимое вашего индекса в результат рендеринга layout.erb.