ruby-on-rails - Rails 渲染如何在 Controller 中工作?为什么它不使用布局?

标签 ruby-on-rails layout render partial actioncontroller

我尝试在操作中编写渲染,但布局行为不同,为什么?

def show
   # assuming we have a partial in app/views/shared/_panel_show.html.erb
   #render "shared/_panel_show" # have layout
   #render "/shared/_panel_show" # without layout
   #render "shared/panel_show" # Template is missing
   #render :partial => "shared/panel_show" # without layout
   render :partial => "/shared/_panel_show",:layout => "application" # have layout
end

我想渲染部分并遵循 Controller 布局。

最佳答案

partial 的重点在于它只渲染 View 的一部分,并且在没有任何布局的情况下渲染它。

我建议创建一个新 View (以及我们 Controller 中的操作),例如shared/full_panel_show,它只渲染部分内容。

<%= render :partial => 'shared/panel_show' %>

现在在您的 Controller 中渲染新 View :

def show
  render :action => 'shared/full_panel_show'
end

根据您对显示 View 的掺杂,您可以只从其 View 中渲染部分内容。

关于ruby-on-rails - Rails 渲染如何在 Controller 中工作?为什么它不使用布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2272322/

相关文章:

ruby-on-rails - 关联的 ActiveRecord STI 外键覆盖

html - 在调整浏览器窗口大小时从左侧隐藏 DIV

Android 布局,左侧有 2 个 TextView,右侧有 CheckBox,复选框上有文本

javascript - 如何防止 CSS 渲染阻塞我的网站?

ruby-on-rails - 不以替换脚本结尾的电子邮件的正则表达式

ruby-on-rails - 如何执行 "just commit after test"

node.js - 如何通过url在node js中渲染日志/文本文件?

r - 在不同 tabPanel 的渲染上使用 R Shiny 的服务员时无法正确显示

ruby-on-rails - 我应该在Heroku上部署Ruby on Rails应用程序吗

css - 在屏幕底部放置一个 div 但不允许其后面有内容