【问题标题】:Ruby on Rails multidimensional array-like storageRuby on Rails 多维类数组存储
【发布时间】:2011-04-18 21:10:57
【问题描述】:

我正在尝试创建一个具有:

文字输入--技能

DropDown--多年经验

使用 jQuery,如果用户需要添加更多技能,我会填充输入和下拉字段。是否可以在一个数据库条目中存储多组技能和他们各自的多年经验?

我一直在研究 has_many:

谢谢!

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3


    【解决方案1】:

    这里不需要额外查询(has_many),看看rails序列化:

    class User < ActiveRecord::Base
      serialize :preferences, Hash
    end
    
    user = User.create(:preferences => { "background" => "black", "display" => "large" })
    User.find(user.id).preferences # => { "background" => "black", "display" => "large" }
    

    你可以对数组做同样的事情

    【讨论】:

    • 谢谢,这很有道理,但我对如何将多个字段更改为 create 方法感到困惑,我认为这就是我最麻烦的地方。
    • 好吧,既然您无论如何都在使用 jquery,您可以将 hidden_​​field 添加到您的表单并将 .submit 事件绑定到它。一旦用户提交表单,jquery 将使用所有 [skill, experience] 值(以您喜欢的任何格式)填充该字段。所以你必须在你的控制器中解析它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多