Ruby on rails Rails,使用carrierwave上载多个图像,但我的数据库不支持json

Ruby on rails Rails,使用carrierwave上载多个图像,但我的数据库不支持json,ruby-on-rails,json,carrierwave,Ruby On Rails,Json,Carrierwave,我正在尝试将Carrierwave用于多个图像上载。 遵循github上的carrierwave指南后,我会: rails g migration add_images_to_areas images:json rake db:migrate 但是在我的模式中,我的区域表没有显示,而是得到: # Could not dump table "areas" because of following StandardError # Unknown type 'json' for column '

我正在尝试将Carrierwave用于多个图像上载。 遵循github上的carrierwave指南后,我会:

rails g migration add_images_to_areas images:json
rake db:migrate
但是在我的模式中,我的区域表没有显示,而是得到:

# Could not dump table "areas" because of following StandardError
#   Unknown type 'json' for column 'images'
我现在该怎么办?我应该使用另一种类型而不是json,但是什么呢


如果这是一个业余问题,很抱歉。

默认情况下,数据库不支持数组、哈希等

为此,您可以通过将以下代码添加到模型中对其进行序列化:

class Name_class < ActiveRecord::Base
  serialize :column_name, JSON
end
这将把信息作为
Text
插入数据库,当您检索它时,它将是
JSON


有关
serialization
的更多信息,请参见此处的我不确定这里发生了什么问题,CarrierAve的github教程建议:json,但您不必这样做


在我遵循Carrierwave的多图像上传指南之后,一切都很顺利:

数据库支持数组或json,还有一些扩展。我不知道这一点。当我需要数据库中的json或数组字段时,我总是使用serialize。谢谢你提供的信息,@RubenBarbosa谢谢你的提示,我会尝试一下,然后马上回复你。Hollywar发现了,你自己选择。你能把你的控制器的代码吗?当你把它保存在数据库中时的动作。我认为问题就在那里。
add_column :user_preferences, :text