在Web上还有其他一些StackOverflow问题和其他文章之后,我试图向我的模型之一添加数组属性。
rails g迁移add_new_attribute_to_my_model new_attribute:text
然后在迁移文件中
def change
add_column :my_model, :new_attribute, :text, default: [].to_yaml
end
(因为如果我这样做
def change
add_column :my_model, :new_attribute, :text, default: [], array:true
end
我在迁移过程中得到了TypeError: can't quote Array
。
rake db:migrate
在my_model_controller.rb
class MyModelController < ApplicationController
class MyModel < ActiveRecord::Base
serialize :new_attribute,Array
end
...
end
但是这样我得到
a = MyModel.new
=> MyModel ... new_attribute:“ --- [] \ n”>
a.new_attribute <<“ asd”
=> MyModel ... new_attribute:“ --- [] \ nasd”>
我应该在哪里修复该过程?