У меня есть профиль миграции, как это:Создание определяемых пользователем атрибутов с помощью хэш - Рельсы
class CreateProfiles < ActiveRecord::Migration
def self.up
create_table :profiles do |t|
t.integer :user_id
t.text :detail
t.boolean :visible
t.timestamps
end
add_index :profiles, :detail
end
def self.down
drop_table :profiles
end
end
И у меня есть User has_one Profile
и Profile belongs_to User
Relation.
Теперь я хочу сохранить данные профиля как сериализованные. Поэтому у меня есть класс профиля, как это:
class Profile < ActiveRecord::Base
belongs_to :user
serialize :detail, Hash
end
Это потому, что я хочу, чтобы каждый пользователь мог создавать различные данные профиля, что-то вроде этого
Profile.new.detail ={:education => ["Degree", true], :Hobby => ["Music", false] }
Теперь, так как у меня user_id имеет другой атрибут, какую команду я могу использовать для добавления пользователями новых сведений?
Спасибо, Profile.new.detail = {: образование => [ "", правда]: Город => [ "Cook ", false]} это работает, но hw я могу сохранить user_id вместе с ним, так как каждый пользователь будет иметь отдельные атрибуты профиля! –
вы хотите, чтобы «Профиль» имел много «деталей»? Каждый из них имеет атрибуты «Профиль»? – farnoy
'Profile.new.detail = {education: true, user_id: @ user.id}', но я не знаю, зачем вам это делать. – farnoy