Rails 3 Beta 2, Haml, Nested Layouts и LocalJumpError - PullRequest
1 голос
/ 12 апреля 2010

Хорошо, я пытаюсь создать приложение с вложенными шаблонами. Я использую Rails 3 Beta 2 и Haml. Я обошел все вокруг и решил использовать самый четкий подход и структурировал свои шаблоны следующим образом:

# application.html.haml
!!!
%body
  %h1 Outermost Template
  = yield(:foobar)

# inner.html.haml
- content_for :foobar do
  %h2 Inner Template
  = yield

= render :file => 'layouts/application'

# foo_controller.rb
layout 'inner'

При всем этом я получаю LocalJumpError с сообщением no block given. Следы стека пустые и довольно бесполезные. Есть идеи? Это известные проблемы?

Ответы [ 2 ]

4 голосов
/ 03 июня 2010

дать:

def inside_layout layout = 'application', &block
  render :inline => capture_haml(&block), :layout => "layouts/#{layout}"
end

попытка. Используйте как http://m.onkey.org/2009/7/7/nested-layouts

1 голос
/ 12 апреля 2010

content_for блоки не должны содержать yield. Они не передают блок сами, откуда приходит ваше сообщение об ошибке.

...