微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 如何在窗体中显示Rails ActiveRecord Model的序列化数组属性?

我们在Rails中使用ActiveRecord的“serialize”功能,如下所示:
class User < ActiveRecord::Base
    serialize :favorite_colors,Array
    ....
end

所以我们可以拥有

u = User.last
u.favorite_colors = [ 'blue','red','grey' ]
u.save!

所以基本上ActiveRecord是序列化上面的数组,并将它存储在一个名为“爱好_colors”的数据库字段中.

我的问题是:你如何允许用户在表单中输入他最喜欢的颜色?
你使用一系列文本框吗?一旦他们进入,你怎么显示他们的形式让他编辑?

这是一个与Rails Form Helpers相关的序列化数组属性的问题.

谢谢

解决方法

如果您想要多选HTML字段,请尝试:
= form_for @user do |f|
  = f.select :favorite_colors,%w[full colors list],{},:multiple => true

如果您使用simple_form宝石,您可以轻松地将选项显示为复选框:

= simple_form_for @user do |f|
  = f.input :favorite_colors,as: :check_Boxes,collection: %w[full colors list]

原文地址:https://www.jb51.cc/ruby/266671.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐