我试着在我的Rails应用程序中保存一个哈希映射id到一定数量的尝试。我对数据库迁移,以适应这个新列:使用Rails序列化将散列保存到数据库
class AddMultiWrongToUser < ActiveRecord::Migration
def self.up
add_column :users, :multi_wrong, :string
end
def self.down
remove_column :users, :multi_wrong
end
end
在我的模型,我有:
class User < ActiveRecord::Base
serialize :multi_wrong, Hash
end
但是当我使用的铁轨控制台边做边测试:
user = User.create()
user.multi_wrong = {"test"=>"123"}
user.save
输出错误。这里有什么问题?
尝试保存记录后user.errors中是否有任何内容? – Martijn
将来,您可以使用bang方法(save!)来引发异常并显示错误消息。 – leishman