狂欢,《Ruby on Rails》。关于“产量”使用的问题功能

发布于 2024-10-23 21:21:29 字数 712 浏览 4 评论 0原文

通过 Github 上的官方代码存储库阅读 spree 源代码时, https://github.com/spree/spree。我忍不住注意到演示站点的主加载页面上“yield”函数的奇怪用法(至少是我第一次看到它),如 https://github.com/spree/spree/blob/master/core/app/views /layouts/spree_application.html.erb

页面正文中的未命名yield引起了我的兴趣,是什么让它自动“yield”以下页面的内容: https://github.com/spree /spree/blob/master/core/app/views/shared/_products.html.erb

换句话说,在使用未命名的产量时,什么决定了要渲染的内容。

任何澄清将不胜感激。

While reading the spree source code via the official code repository on Github, https://github.com/spree/spree. I couldn't help but notice a strange (at least the first time I see it) usage of the function "yield" on the main loading page of the demo site, as in https://github.com/spree/spree/blob/master/core/app/views/layouts/spree_application.html.erb

The unnamed yield in the body of the page intrigues me, what makes it automatically "yield" the content of the following page:
https://github.com/spree/spree/blob/master/core/app/views/shared/_products.html.erb

In other words what decides on what to be render while using an unnamed yield.

Any clarification will be highly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薄情伤 2024-10-30 21:21:29

spree_application.html.erb是一个主应用程序布局页面。这将具有应用程序/大部分应用程序通用的所有设计(在整个站点范围内进行更改的一个地方)。

未命名的yield将放置与当前请求相关的视图内容。

当您访问主页时,您一定注意到了这一点。这是products#index(产品控制器和视图索引)。 根:到=> 'products#index'参考 )。

如果您检查 (product#index view< /a>),它渲染来自 shared/_product 的部分

<%= render "shared/products", :products =>; @产品,:分类=> @taxon %>

spree_application.html.erb is a main application layout page. This will have all the design common to application/large part of application (One place to make changes sitewide).

the unnamed yield will place the content of view which is related to current request.

You must have noticed this when you visited home page. Which is products#index (Products controller and view index). root :to => 'products#index' (Reference).

If you check (product#index view), it renders partials from shared/_product

<%= render "shared/products", :products => @products, :taxon => @taxon %>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文