加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails从application.html.erb渲染实例变量

发布时间:2020-12-17 03:31:47 所属栏目:百科 来源:网络整理
导读:我正在使用Rails 4书来关注敏捷Web开发,我对渲染方面有点困惑.这个问题的简单版本是…在application.html.erb文件中 render @cart 这很令人困惑,因为我认为需要有一个与该视图相关联的控制器才能知道要使用哪个部分和@cart变量.是否只是通过命名约定,该行寻
我正在使用Rails 4书来关注敏捷Web开发,我对渲染方面有点困惑.这个问题的简单版本是…在application.html.erb文件中

render @cart

这很令人困惑,因为我认为需要有一个与该视图相关联的控制器才能知道要使用哪个部分和@cart变量.是否只是通过命名约定,该行寻找像_cart.html.erb这样的部分?在那种情况下,它实际上不知道@cart是什么,直到它呈现部分?

一些澄清会很可爱.谢谢!

解决方法

这是一种简写语法. From the docs:

每个partial也有一个局部变量,其名称与partial(减去下划线)相同.您可以通过:object选项将对象传递给此局部变量:

<%= render partial: "customer",object: @new_customer %>

在customer partial中,customer变量将从父视图引用@new_customer.

如果要将模型实例渲染为局部,则可以使用简写语法:

<%= render @customer %>

假设@customer实例变量包含Customer模型的实例,这将使用_customer.html.erb来呈现它,并将局部变量customer传递给partial,这将引用父视图中的@customer实例变量.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读