Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法迁移带有数组的表_Ruby On Rails_Ruby_Database_Postgresql_Migrate - Fatal编程技术网

Ruby on rails 无法迁移带有数组的表

Ruby on rails 无法迁移带有数组的表,ruby-on-rails,ruby,database,postgresql,migrate,Ruby On Rails,Ruby,Database,Postgresql,Migrate,当我尝试迁移时: class CreateTasks < ActiveRecord::Migration[5.0] def change create_table :tasks do |t| t.string :category t.string :text t.string :asset_name t.string :correct_answers, array:true, default: [] t.string

当我尝试迁移时:

class CreateTasks < ActiveRecord::Migration[5.0]
  def change
    create_table :tasks do |t|
      t.string :category
      t.string :text
      t.string :asset_name
      t.string :correct_answers, array:true, default: []
      t.string :wrong_answers, array:true, default: []
      t.integer :score

      t.timestamps
    end
  end
end
我得到一个错误:

==20161217135738 CreateTasks:迁移====================================== -创建_表:任务rails中止!StandardError:发生错误,此迁移和所有后续迁移已取消:

无法引用数组

我正在开发中使用rails 5和mysql。
你知道如何解决这个问题吗?

如果你想支持所有的数据库,你必须用字符串序列化数组,我给你举个例子

class Documents < ActiveRecord::Base
 serialize :share
end

class AddShareToDocuments < ActiveRecord::Migration
 def change
   add_column :documents, :share, :string, :default => []
 end 
end

您使用的是什么类型的数据库?postgresqldatabase@edit对不起,我忘记了它的开发evn,我使用的是mysql,然后你的答案是:你可以使用mysql的Serialize。因此,以字符串的形式生成正确和错误的答案。在任务模型内部,放置serialize:correct_answers,Array。错误的答案也是一样。也许我应该在开发中使用postgres而不是mysql?