加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 具有Rails和Mongoid的动态属性

发布时间:2020-12-16 20:06:09 所属栏目:百科 来源:网络整理
导读:我正在通过使用Rails(Rails 3 beta 3)的Mongoid Ruby宝石学习MongoDB,并且我试图提出一种基于另一个模型的字段在模型上创建动态属性的方法,我认为一个模式 – 较少的数据库将是一个不错的选择. 所以例如,我会有模型: class Account include Mongoid::Docume
我正在通过使用Rails(Rails 3 beta 3)的Mongoid Ruby宝石学习MongoDB,并且我试图提出一种基于另一个模型的字段在模型上创建动态属性的方法,我认为一个模式 – 较少的数据库将是一个不错的选择.

所以例如,我会有模型:

class Account
  include Mongoid::Document

  field :name,:type => String
  field :token,:type => String
  field :info_needed,:type => Array

  embeds_many :members
end

class Member
  include Mongoid::Document

  embedded_in :account,:inverse_of => :members

end

我正在寻找帐户模型的“info_needed”属性,并根据内部的内容在成员模型中创建动态属性.如果club.info_needed是[“first_name”,“last_name”],我试图创建一个将first_name和last_name属性保存到Member模型的表单.

但是,在实践中,在尝试执行此操作时,我会继续在成员模型中获取“undefined method first_name =”错误.我知道MongoDB可以处理每个记录的动态属性,但是如何在没有未定义的方法错误的情况下让Mongoid执行此操作?

解决方法

Mongoid并不真正支持它.

我自己在Mongoid小组里碰巧有这个asked.

创建新文档时可能会像这样:

account = Account.new(:some_dynamic_field =>“…”)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读