oct*_*ian 1 initialization ruby-on-rails
我有两个数组,我想[]在我的Prediction模型对象中初始化.
如果我尝试:
def initialize
@first_estimation = []
@last_estimation = []
end
Run Code Online (Sandbox Code Playgroud)
然后我的许多单元测试都失败了.
Failure/Error: assign(:prediction, Prediction.new(
ArgumentError:
wrong number of arguments (1 for 0)
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试:
def after_initialize
@first_estimation = []
@last_estimation = []
end
Run Code Online (Sandbox Code Playgroud)
然后数组不会被实例化.
如何在构造对象时实例化数组而不更改其他内容?
由于我在这里看到一个括号,Prediction.new(我推断你试图通过参数.
但你initialize不接受任何=>繁荣
但等等,它是ActiveRecord模型吗?
如果是这样,你必须使用:
after_initialize :set_arrays
def set_arrays
@first_estimation = []
@last_estimation = []
end
Run Code Online (Sandbox Code Playgroud)
也许attr_accessor也可以使用,但不知道你的期望
| 归档时间: |
|
| 查看次数: |
40 次 |
| 最近记录: |