2010-12-08 7 views
12

これは非常に新しいレールです。私は今、私はレールのテーブルの列にハッシュ値を保持する方法

user_details(のような別のテーブルにこれらのユーザーのいくつかの追加情報を保持しようとしています

ユーザー(ID、名前、電子メール) のようにすべてのユーザーの基本的な情報を保持するテーブルを持っていますid、user_id、additional_info)

私はこのuser_detailsテーブルを作成しました。今私はチェックのためのいくつかのデフォルトのレコードを保持しようとします。私の追加の詳細がUser_detailsテーブルの列additional_infoにユーザー(指定、給与、prjtname)である場合のように、additional_infoにユーザーの追加の詳細のハッシュ値を保持する方法。

データ型 iはUser_detailsテーブルのこのADDITIONAL_INFO列のために与えなければなりません。また何。次に、あなたのモデルではこの列はハッシュが含まれていることを指定する必要があり

add_column :user_details, :additional_info, :text 

をして:あなたが指定することができ、あなたの移行におけるように、その列のデータ型がテキストでなければならないいくつかの提案に...

答えて

26

を教えてください次のserializeコマンドでそれを行います:

class UserDetail < ActiveRecord::Base 
    serialize :additional_info 

その後、ハッシュ情報を保存することができます。

@ud = UserDetail.new 
@ud.additional_info = {:salary => 1000000} 
@ud.save 
+0

"serialize"について知りませんでした。 +1 – Faisal

+0

本当に助けてくれました! –

+0

それは私のために働く..ありがとう – useranon

関連する問題