Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to keep a hash value in the table column in rails

i am very new to rails . I am having a table holding all users basic information like

users(id,name,email) now i am trying to keep some additional information of these users in a separate table like

user_details(id,user_id,additional_info)

I have created this user_details table . Now i try to keep some default records for checking . how to keep the hash value of the user's additional details in the additional_info like if my additional details are user's (designation,salary,prjtname) in the column additional_info of the User_details table.

Also what datatype i have to give for this additional_info column of the User_details table. Please give some suggestions ..

like image 526
useranon Avatar asked Dec 08 '10 10:12

useranon


1 Answers

The data type for that column must be text so in your migrations you can specify:

add_column :user_details, :additional_info, :text

Then in your model you have to specify that this column will contain a hash and you do that with the serialize command:

class UserDetail < ActiveRecord::Base
  serialize :additional_info

After that you can save hash information.

@ud = UserDetail.new
@ud.additional_info = {:salary => 1000000}
@ud.save
like image 130
DanneManne Avatar answered Sep 18 '22 16:09

DanneManne