Double Render с макетом и частями - PullRequest
1 голос
/ 25 июня 2011

Хорошо, у меня есть метод show, который пытается визуализировать макет, а представление show визуализирует пару партиалов, но я получаю двойную ошибку рендеринга в рельсах.Как мне получить его для рендеринга макета и партиалов?Обратите внимание, что он прекрасно выглядит с макетом по умолчанию.

Вот мое действие контроллера

def show
  @site = Site.find_by_subdomain!(request.subdomain)
  @page = @site.pages.find_by_name('index')

  render :layout => "layouts/mobile"
  respond_to do |format|
    format.html # show.html.erb
    format.xml  { render :xml => @site }
  end
end

И мой взгляд выглядит просто так:

<%= render(:partial => "page", :object => @page) %>

Ответы [ 2 ]

2 голосов
/ 25 июня 2011

Хорошо, разобрался. Извините за пост, но я отвечу на него, если у кого-то есть проблемы. В основном в верхней части моего файла контроллера мне просто нужна была строка:

layout "layouts/mobile", :only => [:show]
0 голосов
/ 25 июня 2011

Не уверен, почему вы вызываете render в вашем действии именно в том месте, где вы его называете.Короче говоря: вам не нужно делать это там.Если вы это сделаете, rails будет пытаться выполнить рендеринг снова, когда метод вернет управление, поэтому вы должны либо вернуться из метода после вызова render, либо не вызывать его в методе.

...