Ruby on Rails 的“content_for :title"如何?得到后来分配的东西? [英] How can Ruby on Rails's "content_for :title" get something that is assigned later?

查看:53
本文介绍了Ruby on Rails 的“content_for :title"如何?得到后来分配的东西?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

简短的问题是:子页面如何

The short question is: how can a subpage's

<% content_for :title do 'Showing product' end %>

为主布局设置:title?

详情:

我们可以在应用布局中使用application.html.erb

We can use in the application layout application.html.erb

<title><%= content_for :title %>
  ...
  <%= yield %>

并且我认为 yield 返回子页面的内容,例如来自 show.html.erb 的内容,其中包含:

and I think yield returns the content for a subpage, such as from show.html.erb, where it contains:

<% content_for :title do 'Showing product' end %>

:title 如何以某种方式被 yield 之上的东西使用?我以为先评估 title 部分,然后是 yield,那么 :title 如何追溯设置 的内容</code> 标签?<em class="showen"></em></p> <p class="en">How can the <code>:title</code> somehow get used by something above the <code>yield</code>? I thought the <code>title</code> part is evaluated first, and then the <code>yield</code>, so how can the <code>:title</code> retroactively set the content for the <code><title></code> tag?</p> <h3 class="best_ans mt-1">推荐答案</h3> <p class="cn">简答:作弊.</p> <p class="cn">长答案:ActionView 重新定义了产量,因此它与我们从好的红宝石中了解和喜爱的产量不同.事实上,模板文件在布局文件之前渲染,然后布局文件中的产量将被已经渲染的模板替换.<code>content_for</code> 块保存在类变量中,以便您以后可以从布局中访问它们.<em class="showen"></em></p> <p class="en">Long answer: ActionView redefines yield so it is not the same yield we know and love from good ol' ruby. In fact the template file is rendered before the layout file and then the yield in the layout file will be substituted by the already rendered template. <code>content_for</code> blocks are saved into class variables and so you can later access them from your layout.</p> <p>这篇关于Ruby on Rails 的“content_for :title"如何?得到后来分配的东西?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!</p> </div> <div class="arc-body-main-more"> <span onclick="unlockarc('2386798');">查看全文</span> </div> </div> <div> </div> <div class="wwads-cn wwads-horizontal" data-id="166" style="max-width:100%;border: 4px solid #666;"></div> </div> </article> <div id="arc-ad-2" class="mb-1"> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5038752844014834" crossorigin="anonymous"></script> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5038752844014834" data-ad-slot="3921941283"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <div class="widget bgwhite radius-1 mb-1 shadow widget-rel"> <h5>相关文章</h5> <ul> <li> <a target="_blank" title="Ruby on Rails:提供vs content_for" href="/1950462.html"> Ruby on Rails:提供vs content_for; </a> </li> <li> <a target="_blank" title="Ruby on Rails 的 content_for 会自动进行 HTML 转义吗?" href="/2388111.html"> Ruby on Rails 的 content_for 会自动进行 HTML 转义吗?; </a> </li> <li> <a target="_blank" title="Rails 产量 - content_for 问题" href="/2467300.html"> Rails 产量 - content_for 问题; </a> </li> <li> <a target="_blank" title="在rails中使用content_for包含内联javascript" href="/1014678.html"> 在rails中使用content_for包含内联javascript; </a> </li> <li> <a target="_blank" title="我如何使用 content_for 在 :yield 中放入一些东西" href="/2388417.html"> 我如何使用 content_for 在 :yield 中放入一些东西; </a> </li> <li> <a target="_blank" title="JSP,它的工作方式类似于Ruby / Rails / Erb中的yield,layout,content_for" href="/968188.html"> JSP,它的工作方式类似于Ruby / Rails / Erb中的yield,layout,content_for; </a> </li> <li> <a target="_blank" title="ruby - content_for的li&gt;ul&gt;li类型的嵌套" href="/727156.html"> ruby - content_for的li&gt;ul&gt;li类型的嵌套; </a> </li> <li> <a target="_blank" title="Rails检查是否在content_for中定义了yield:area" href="/1546515.html"> Rails检查是否在content_for中定义了yield:area; </a> </li> <li> <a target="_blank" title="使用默认内容块生成 content_for" href="/2387772.html"> 使用默认内容块生成 content_for; </a> </li> <li> <a target="_blank" title="NHaml是否具有content_for布局功能?" href="/1947035.html"> NHaml是否具有content_for布局功能?; </a> </li> <li> <a target="_blank" title="content_for与部分收益率" href="/2116314.html"> content_for与部分收益率; </a> </li> <li> <a target="_blank" title="Ruby on Rails助手打印出奇怪的东西" href="/1836481.html"> Ruby on Rails助手打印出奇怪的东西; </a> </li> <li> <a target="_blank" title="Ruby on Rails:循环中的批量分配?" href="/1818433.html"> Ruby on Rails:循环中的批量分配?; </a> </li> <li> <a target="_blank" title="How to Display Content with Raw HTML with Ruby on Rails" href="/2939808.html"> How to Display Content with Raw HTML with Ruby on Rails; </a> </li> <li> <a target="_blank" title="演示者导轨中未定义的方法“content_for"" href="/2383965.html"> 演示者导轨中未定义的方法“content_for"; </a> </li> <li> <a target="_blank" title="在HAML上下文中使用Rails`content_for`帮助器的正确语法是什么" href="/2116348.html"> 在HAML上下文中使用Rails`content_for`帮助器的正确语法是什么; </a> </li> <li> <a target="_blank" title="Django是否有这样的东西,因为Ruby on Rails有Heroku" href="/637913.html"> Django是否有这样的东西,因为Ruby on Rails有Heroku; </a> </li> <li> <a target="_blank" title="如何使用Ruby on Rails 3检查HTTP请求的字段'Content-Length'?" href="/887382.html"> 如何使用Ruby on Rails 3检查HTTP请求的字段'Content-Length'?; </a> </li> <li> <a target="_blank" title="同一页面上有多个content_for" href="/1880397.html"> 同一页面上有多个content_for; </a> </li> <li> <a target="_blank" title="Ruby on Rails 4不显示content_tag:i" href="/2269446.html"> Ruby on Rails 4不显示content_tag:i; </a> </li> <li> <a target="_blank" title="Ruby on Rails,cancan和默认角色分配" href="/1989945.html"> Ruby on Rails,cancan和默认角色分配; </a> </li> <li> <a target="_blank" title="将 content_for 与脚本标签的 src 属性一起使用?" href="/2389074.html"> 将 content_for 与脚本标签的 src 属性一起使用?; </a> </li> <li> <a target="_blank" title="如何有条件地使用"content_for"哈姆包装纸" href="/2116412.html"> 如何有条件地使用"content_for"哈姆包装纸; </a> </li> <li> <a target="_blank" title="使用content_for和ajax / Jquery来部分更新网页" href="/1019418.html"> 使用content_for和ajax / Jquery来部分更新网页; </a> </li> <li> <a target="_blank" title="Ruby on Rails:如何为变量分配一个硬值?" href="/2380762.html"> Ruby on Rails:如何为变量分配一个硬值?; </a> </li> </ul> </div> <div class="mb-1"> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5038752844014834" crossorigin="anonymous"></script> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5038752844014834" data-ad-slot="3921941283"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> </div> <div class="side"> <div class="widget widget-side bgwhite mb-1 shadow"> <h5>其他开发最新文章</h5> <ul> <li> <a target="_blank" title="拒绝显示一个框架,因为它将'X-Frame-Options'设置为'sameorigin'" href="/893060.html"> 拒绝显示一个框架,因为它将'X-Frame-Options'设置为'sameorigin'; </a> </li> <li> <a target="_blank" title="什么是&QUOT; AW&QUOT;在部分标志属性是什么意思?" href="/303988.html"> 什么是&QUOT; AW&QUOT;在部分标志属性是什么意思?; </a> </li> <li> <a target="_blank" title="在运行npm install命令时获取'npm WARN弃用'警告" href="/840917.html"> 在运行npm install命令时获取'npm WARN弃用'警告; </a> </li> <li> <a target="_blank" title="cmake无法找到openssl" href="/516280.html"> cmake无法找到openssl; </a> </li> <li> <a target="_blank" title="从Spark的scala中的* .tar.gz压缩文件中读取HDF5文件" href="/850628.html"> 从Spark的scala中的* .tar.gz压缩文件中读取HDF5文件; </a> </li> <li> <a target="_blank" title="Twitter :: Error :: Forbidden - 无法验证您的凭据" href="/630061.html"> Twitter :: Error :: Forbidden - 无法验证您的凭据; </a> </li> <li> <a target="_blank" title="我什么时候需要一个fb:app_id或者fb:admins?" href="/747981.html"> 我什么时候需要一个fb:app_id或者fb:admins?; </a> </li> <li> <a target="_blank" title="将.db文件导入R" href="/902960.html"> 将.db文件导入R; </a> </li> <li> <a target="_blank" title="npm通知创建一个lockfile作为package-lock.json。你应该提交这个文件" href="/744854.html"> npm通知创建一个lockfile作为package-lock.json。你应该提交这个文件; </a> </li> <li> <a target="_blank" title="拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“script-src'self'”" href="/819167.html"> 拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“script-src'self'”; </a> </li> </ul> </div> <div class="widget widget-side bgwhite mb-1 shadow"> <h5> 热门教程 </h5> <ul> <li> <a target="_blank" title="Java教程" href="/OnLineTutorial/java/index.html"> Java教程 </a> </li> <li> <a target="_blank" title="Apache ANT 教程" href="/OnLineTutorial/ant/index.html"> Apache ANT 教程 </a> </li> <li> <a target="_blank" title="Kali Linux教程" href="/OnLineTutorial/kali_linux/index.html"> Kali Linux教程 </a> </li> <li> <a target="_blank" title="JavaScript教程" href="/OnLineTutorial/javascript/index.html"> JavaScript教程 </a> </li> <li> <a target="_blank" title="JavaFx教程" href="/OnLineTutorial/javafx/index.html"> JavaFx教程 </a> </li> <li> <a target="_blank" title="MFC 教程" href="/OnLineTutorial/mfc/index.html"> MFC 教程 </a> </li> <li> <a target="_blank" title="Apache HTTP客户端教程" href="/OnLineTutorial/apache_httpclient/index.html"> Apache HTTP客户端教程 </a> </li> <li> <a target="_blank" title="Microsoft Visio 教程" href="/OnLineTutorial/microsoft_visio/index.html"> Microsoft Visio 教程 </a> </li> </ul> </div> <div class="widget widget-side bgwhite mb-1 shadow"> <h5> 热门工具 </h5> <ul> <li> <a target="_blank" title="Java 在线工具" href="/Onlinetools/details/4"> Java 在线工具 </a> </li> <li> <a target="_blank" title="C(GCC) 在线工具" href="/Onlinetools/details/6"> C(GCC) 在线工具 </a> </li> <li> <a target="_blank" title="PHP 在线工具" href="/Onlinetools/details/8"> PHP 在线工具 </a> </li> <li> <a target="_blank" title="C# 在线工具" href="/Onlinetools/details/1"> C# 在线工具 </a> </li> <li> <a target="_blank" title="Python 在线工具" href="/Onlinetools/details/5"> Python 在线工具 </a> </li> <li> <a target="_blank" title="MySQL 在线工具" href="/Onlinetools/Dbdetails/33"> MySQL 在线工具 </a> </li> <li> <a target="_blank" title="VB.NET 在线工具" href="/Onlinetools/details/2"> VB.NET 在线工具 </a> </li> <li> <a target="_blank" title="Lua 在线工具" href="/Onlinetools/details/14"> Lua 在线工具 </a> </li> <li> <a target="_blank" title="Oracle 在线工具" href="/Onlinetools/Dbdetails/35"> Oracle 在线工具 </a> </li> <li> <a target="_blank" title="C++(GCC) 在线工具" href="/Onlinetools/details/7"> C++(GCC) 在线工具 </a> </li> <li> <a target="_blank" title="Go 在线工具" href="/Onlinetools/details/20"> Go 在线工具 </a> </li> <li> <a target="_blank" title="Fortran 在线工具" href="/Onlinetools/details/45"> Fortran 在线工具 </a> </li> </ul> </div> </div> </div> <script type="text/javascript">var eskeys = 'ruby,rails,的,content_for,title,如何,得到,后来,分配,的,东西'; var cat = 'cc';';//other-dev</script> </div> <div id="pop" onclick="pophide();"> <div id="pop_body" onclick="event.stopPropagation();"> <h6 class="flex flex101"> 登录 <span onclick="pophide();">关闭</span> </h6> <div class="pd-1"> <div class="wxtip center"> <span>扫码关注<em>1秒</em>登录</span> </div> <div class="center"> <img id="qr" src="https://huajiakeji.com/Content/Images/qrydx.jpg" alt="" style="width:150px;height:150px;" /> </div> <div style="margin-top:10px;display:flex;justify-content: center;"> <input type="text" placeholder="输入验证码" id="txtcode" autocomplete="off" /> <input id="btngo" type="button" onclick="chk()" value="GO" /> </div> <div class="center" style="margin: 4px; font-size: .8rem; color: #f60;"> 发送“验证码”获取 <em style="padding: 0 .5rem;">|</em> <span style="color: #01a05c;">15天全站免登陆</span> </div> <div id="chkinfo" class="tip"></div> </div> </div> </div> <script type="text/javascript" src="https://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script> <script type="text/javascript" src="https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script> <script type="text/javascript" src="https://img01.yuandaxia.cn/Scripts/highlight.min.js"></script> <script type="text/javascript" src="https://img01.yuandaxia.cn/Scripts/base.js?v=0.22"></script> <script type="text/javascript" src="https://img01.yuandaxia.cn/Scripts/tui.js?v=0.11"></script> <footer class="footer"> <div class="container"> <div class="flink mb-1"> 友情链接: <a href="https://www.it1352.com/" target="_blank">IT屋</a> <a href="https://huajiakeji.com/" target="_blank">Chrome插件</a> <a href="https://www.cnplugins.com/" target="_blank">谷歌浏览器插件</a> </div> <section class="copyright-section"> <a href="https://www.it1352.com" title="IT屋-程序员软件开发技术分享社区">IT屋</a> ©2016-2022 <a href="http://www.beian.miit.gov.cn/" target="_blank">琼ICP备2021000895号-1</a> <a href="/sitemap.html" target="_blank" title="站点地图">站点地图</a> <a href="/Home/Tags" target="_blank" title="站点标签">站点标签</a> <a target="_blank" alt="sitemap" href="/sitemap.xml">SiteMap</a> <a href="/1155981.html" title="IT屋-免责申明"><免责申明></a> 本站内容来源互联网,如果侵犯您的权益请联系我们删除. </section> <!--统计代码--> <script type="text/javascript"> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?0c3a090f7b3c4ad458ac1296cb5cc779"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <script type="text/javascript"> (function () { var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </div> </footer> </body> </html>