【问题标题】:Confused about the ways to write code for instance variables对为实例变量编写代码的方法感到困惑
【发布时间】:2015-04-29 13:40:28
【问题描述】:

我对我们如何在 Rails 中编写实例变量感到很困惑。

 Posted by: <%= link_to(@item.user.username, store_path(@item.user)) %>
 Price: <%= number_to_currency @item.price %>

Subject: <%= subject_name @item %>

我只是好奇 (i) subject_name @item 和 (ii) @item.price 之间有什么区别?

不应该是@item.subject_name 吗?

【问题讨论】:

  • subject_name 将主要在您的助手中定义..
  • subject_name 可能是helper method,这就像在view 中可以调用的任何其他方法一样。在@item.price 中,@item 是类Item 的实例对象,price 是该模型的属性。这就是为什么它可以用dot 表示法调用
  • 只有当 subject_nameItem 模型中的实例方法或者它是 items 表中的字段时,您才能调用 @item.subject_name .在这里,它可能是一个辅助方法。
  • number_to_currency 应该是接受数字的方法 @item 是您的实例对象,价格可能是项目模型内的方法或项目模型的属性

标签: ruby-on-rails ruby


【解决方案1】:

我希望subject_name 不是一个变量,而是一个方法。我猜你有一个方法 subject_name 在你的一个帮助文件中定义了一个参数 - 在这个例子中是 @item

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-03
    • 2021-09-01
    • 1970-01-01
    • 2017-01-01
    • 2013-07-27
    相关资源
    最近更新 更多