尝试在Rails 5中使用模型中的attr_accessor值

时间:2017-02-24 12:48:53

标签: ruby-on-rails ruby-on-rails-5 attr-accessor

我有一个模型,我在其中创建一个attr_accessor:

attr_accessor :schedule_date

在我的表格中,我有一个字段:

<%= f.text_field :schedule_date, label: 'Date', required: true %>

现在提交表单后,我想在我的模型中使用此字段进行一些计算。

问题是我的模型中的schedule_date未定义。只是为了测试它我试图用字段的值引发错误:

我的模型看起来像这样:

class Ride < ApplicationRecord
  attr_accessor :schedule_date, :schedule_time
  raise schedule_date
end

但是在提交表格时我得到了:

  

NoMethodError(未定义的方法`schedule_date&#39;

为什么我不能在模型中使用attr_accessor值?

1 个答案:

答案 0 :(得分:1)

您只能通过对象本身或@schedule_date

来调用它
attr_accessor :schedule_date

,因为

def schedule_date=(var) @schedule_date = var end def schedule_date @schedule_date end 只是以下内容的快捷方式:

 ride = Ride.new()
 ride.schedule_date

更新

{{1}}