【发布时间】:2021-03-29 20:53:09
【问题描述】:
我正在 Sinatra 中使用 activerecord 编写应用程序,所以我想我的问题与 Rails 中的相同。
class Entry < ActiveRecord::Base
require 'date'
belongs_to :bankaccount
end
class Recurrent < Entry
attr_accessor :date_1, :date_2, :monthly_entry
def initialize (date_1, date_2)
@date_1 = date_1 # format DateTime.new(2020,12,5)
@date_2 = date_2
end
# other methods
当我运行这段代码时,我得到:
>> date_1 = DateTime.new(2020,12,5)
>> date_2 = DateTime.new(2021,11,5)
>> recurrent = Recurrent.new(date_1, date_2)
**ArgumentError (wrong number of arguments (given 2, expected 0..1))**
当我删除参数时,我收到以下错误消息:
>> recurrent = Recurrent.new
**ArgumentError (wrong number of arguments (given 1, expected 2))**
当我在普通 ruby 中执行此操作并在 irb 中运行它时,因此没有 activerecord,它可以正常工作。
【问题讨论】:
标签: ruby class activerecord arguments sinatra