0

ユーザーがアプリケーション エンティティ/フォームのカスタム属性を定義できるようにするアプリケーションを構築するのに役立つ Ruby gem はありますか? これは、ERP または CRM アプリでは非常に一般的です。

https://github.com/latortuga/has_magic_columnsを見てみましたが、有望に見えますが、README には本番環境に対応していないと書かれています。また、コードが異なるデータ型を同じ文字列列に格納するという事実も気に入りませんでした。

NoSQL データベースを使用してカスタム属性をスキーマレス データベースに格納できますが、カスタム属性の構成を格納するデータベース構造を作成する必要があります。

4

2 に答える 2

1

Rails 4 の新しいアクティブ レコード hstore を調べましたか? これにより、キーと値のペアを PostgreSQL 内に直接保存できます。

http://edgeguides.rubyonrails.org/4_0_release_notes.html#active-record-notable-changes

于 2013-07-29T18:37:34.890 に答える
1

Rails 3.2 で登場した ActiveRecord::Store を利用できます。それはあなたが探しているものを正確に提供します:

  • データベース内の 1 つのテキスト列にシリアル化するストア
  • 必要に応じて属性を内部に入れます
  • さらに、共通属性のアクセサーを定義できます

例:

class User < ActiveRecord::Base
  store :settings, accessors: [ :color, :homepage ], coder: JSON
end

u = User.new(color: 'black', homepage: '37signals.com')
u.color                          # Accessor stored attribute
u.settings[:country] = 'Denmark' # Any attribute, even if not specified with an accessor

# There is no difference between strings and symbols for accessing custom attributes
u.settings[:country]  # => 'Denmark'
u.settings['country'] # => 'Denmark'

# Add additional accessors to an existing store through store_accessor
class SuperUser < User
  store_accessor :settings, :privileges, :servants
end

貼り付け/詳細: http://api.rubyonrails.org/classes/ActiveRecord/Store.html

于 2013-07-30T14:40:11.687 に答える