ruby-on-rails - 如何解决 Rails 模型属性和 gem 名称冲突?

标签 ruby-on-rails ruby ruby-on-rails-3.2

On Rails 3.2.1。我有一个名为 Car 的模型,它有一个名为 rate 的属性(表示价格数量)。我正在使用 ajaxful_rating gem,它将名为 rate 的方法(提交对教师的好坏程度的评分)与 Car 相关联。

所以在我看来,当我尝试显示价格数量时:

<%= @car.rate %>

我收到语法错误,因为命名困惑。如何让 Rails 知道我想调用 rate 属性而不是 rate 方法?有没有一种无需回滚数据库和重命名属性即可解决此问题的简单方法?

最佳答案

您可以使用 read_attribute :

@car.read_attribute(:rate)

但我建议您通过重命名其中一个来解决冲突,因为这只会给您带来问题和困惑。

你不需要回滚你的数据库来重命名一个列,你只需要 create a new migration这样做。

关于ruby-on-rails - 如何解决 Rails 模型属性和 gem 名称冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9674967/

相关文章:

ruby-on-rails - 在多个 Controller 中重构 "render format"

ruby-on-rails-3.2 - 使用 "custom"队列名称的 Sidekiq 工作器被分配给 "default"队列

ruby-on-rails - 嵌套模型和父验证

ruby - 为什么我的单衬 block 不起作用?

ruby 在每个 block 中添加范围元素

ruby-on-rails - 带有 spork 的未初始化常量 RSpec

ruby-on-rails - 意外结束语法错误

ruby-on-rails - rails : How does "new" action called "create" action?

ruby-on-rails - 将 Amazon Simple Notification service SNS 与 ruby​​ 结合使用

ruby-on-rails - 保存后验证 Rails 模型?