Помогите мне понять это; Я изучаю Синатру (и Rails в этом отношении, и Руби).
Скажи, что я делаю приложение для поиска. Форма поиска выложена в одном разделе, а результаты - в другом. Форма поиска отображается в div с помощью предыдущего представления (возможно, из формы входа).
Я хочу обработать параметры формы, выполнить поиск и отобразить результаты в div результатов.
Если у меня есть один «yield» в макете и я отображаю div из разных представлений, div результатов стирает div поиска при его рендеринге.
Если я определю div в макете по умолчанию, то просто отобразлю содержимое, очевидно, макет будет испорчен: должно быть два «выхода», и я не думаю, что Синатра поддерживает передачу блоков в выходы.
Я попробовал плагин sinatra-content-for для foca , и это, кажется, ближе к тому, что мне нужно. Но я не могу понять, где разместить операторы yield_content.
Если у меня есть этот хамл в моем макете:
#search
-# search form
= yield_content :search
#results
-# search results
= yield_content :results
... это в моем поиске:
- content_for :search do
%form{:method => "post"... etc.
... и это в результатах просмотра:
- content_for :results do
%table{:class => 'results'... etc.
Такого рода работы, но когда я рендеринг просмотра результатов, div поиска очищается. Я хотел бы, чтобы это осталось. Я делаю что-то неправильно? Как мне это настроить?