gpt4 book ai didi

ruby-on-rails - 来自 application.html.erb 的 Rails 渲染实例变量

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:22 24 4
gpt4 key购买 nike

我正在关注《使用 Rails 4 进行敏捷 Web 开发》一书,但我对呈现的部分感到有些困惑。这个问题的简单版本是......在 application.html.erb 文件中它说

render @cart

这很令人困惑,因为我认为需要有一个与该 View 关联的 Controller 才能知道要使用哪个局部变量和@cart 变量。是否只是通过命名约定,此行查找类似 _cart.html.erb 的部分内容?在那种情况下,在呈现部分内容之前,它实际上并不知道 @cart 是什么吗?

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

最佳答案

这是一个速记语法。 From the docs :

每个部分也有一个与部分同名的局部变量(减去下划线)。您可以通过 :object 选项将对象传递给此局部变量:

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

在客户部分中,客户变量将引用父 View 中的@new_customer。

如果您有一个模型实例要渲染成部分,您可以使用速记语法:

<%= render @customer %>

假设@customer 实例变量包含 Customer 模型的一个实例,这将使用 _customer.html.erb 来呈现它,并将局部变量 customer 传递到将引用 @customer 实例变量的局部变量中父 View 。

关于ruby-on-rails - 来自 application.html.erb 的 Rails 渲染实例变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19747795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com