Javascript 如何将jquery数组从rails控制器传递到postgresql数组列
在我的项目中,我使用ajax将javascript数组传递给rails控制器。很好。该javascript数组包含上载图像名称。在我的postgresql数据库中,我有数组列名图像。 在rails控制器中,我尝试这样做Javascript 如何将jquery数组从rails控制器传递到postgresql数组列,javascript,jquery,ruby-on-rails,arrays,postgresql,Javascript,Jquery,Ruby On Rails,Arrays,Postgresql,在我的项目中,我使用ajax将javascript数组传递给rails控制器。很好。该javascript数组包含上载图像名称。在我的postgresql数据库中,我有数组列名图像。 在rails控制器中,我尝试这样做 @usr_vendor_web_slide.images = params[:A] @usr_vendor_web_slide.save 参数被传递给控制器,这是一项繁重的工作 *******["sm12.png", "sm13.png", "sm11.png"]******
@usr_vendor_web_slide.images = params[:A]
@usr_vendor_web_slide.save
参数被传递给控制器,这是一项繁重的工作
*******["sm12.png", "sm13.png", "sm11.png"]******
但在数据库映像中,名称数组不会传递到数据库。在终点站
["images", #<struct
ActiveRecord::ConnectionAdapters::PostgreSQL::OID::Array::Data encoder=#
<PG::TextEncoder::Array:0x5
7c6b10 "string[]" elements_type=nil needs quotation>, values=[]>]]
[“图像”,#]]
欣赏您的想法并提供帮助1-编写迁移以添加
文本的列图像
,类型:-
add_column :your_table_name, :images, :text
2-在模型中将此列序列化为数组类型
Class YourModel < ActiveRecord::Base
serialize :images, Array
end
注意:使用迁移的数组类型列可能不适用于某些数据库,但通过序列化将非常有效。您是如何创建数组类型列的?是通过迁移还是通过在模型中序列化来实现的?@Gabbar by migrationyou不应该这样做,因为via migration array type column在mysql db中不起作用。我正在写下面的解决方案,效果很好。但解决了之后,我又遇到了另一个问题。如果您知道有关此列编辑功能的任何信息。帮我解决这个问题。再次感谢advance@ThilankaUmayangaJayarathna编辑功能是什么意思?是否要替换现有图像的图像名称?我说得对吗?是的。你说得对。如果你有任何链接或东西可以参考编辑功能@Gabbar@ThilankaUmayangaJayarathna嗯,我相信这将只是数组删除现有的内容,并添加推新的图像字符串在编辑功能和它只是简单的数组函数,你可以做到这一点。
YourModel.new
=> #<YourModel:0x00000005bdac68
id: nil,
......
images: [],
....>
@usr_vendor_web_slide.images.push(params[:A])
@usr_vendor_web_slide.save