Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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
Arrays Rails 4-接受值数组的单个属性_Arrays_Ruby On Rails 4_Multiple Select - Fatal编程技术网

Arrays Rails 4-接受值数组的单个属性

Arrays Rails 4-接受值数组的单个属性,arrays,ruby-on-rails-4,multiple-select,Arrays,Ruby On Rails 4,Multiple Select,我需要在我的表单中有一个属性(:supported\u media\u types)接受一个值数组 例如,如果需要,我希望用户能够同时单击JPG和PNG 我设置了一个select2下拉列表,其中有多个:true 有没有一种简单的方法来实现这一点,或者我需要创建一个联接表 <%= f.select :supported_ad_types, supported_types_of_media, {include_blank: true}, {class: 'filter_select', nam

我需要在我的表单中有一个属性(:supported\u media\u types)接受一个值数组

例如,如果需要,我希望用户能够同时单击JPG和PNG

我设置了一个select2下拉列表,其中有多个:true

有没有一种简单的方法来实现这一点,或者我需要创建一个联接表

<%= f.select :supported_ad_types, supported_types_of_media, {include_blank: true}, {class: 'filter_select', name: 's2id_location_supported_ad_types[]', style:'width:100%;', placeholder: 'Supported File Types', required: true, multiple: true} %>

创建如下序列化属性:

1-向迁移中添加一列,通常为文本:

rails g model Image types:text
rake db:migrate
2-在你的课堂上:

class Image < ActiveRecord::Base
    serialize :types, Array
end
类映像
现在,您可以执行以下操作:

i = Image.new
i.types << "png"
i.types << "jpg"
i.save
=> #<Image id: 1, types: ["png", "jpg"], created_at: "2014-08-11 22:44:08", updated_at: "2014-08-11 22:44:08">
i=Image.new

i、 类型使用
选择_标记“受支持的_ad_类型[]”…
获取数组参数


在您的型号中,使用
序列化程序:受支持的\u ad\u类型、数组
保存数组参数。

谢谢!似乎在第一条记录上传入一个空白值。我改变了我的(包括:空白):“支持”类型“=”>“”,“JPG”,“BMP”,这与选择有关。如果有帮助,可以考虑接受这个答案。