Schema attached..

model summaries...

class Name < ActiveRecord::Base

  attr_accessible :given, :gender, :position

  has_many :user_names
  has_many :users, :through => :user_names


class UserNames < ActiveRecord::Base
  belongs_to :user
  belongs_to :name


class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :token_authenticatable, :encryptable, :confirmable, :lockable, 
:timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable

  has_many :user_names
  has_many :names, :through => :user_names




DATA MIGRATION..

class CreateUserNames < ActiveRecord::Migration
  def change
    create_table :user_names do |t|
      t.integer :name_id
      t.integer :user_id
      t.integer :position

      t.timestamps
    end
  end
end

then

class RemoveUserIdFromName < ActiveRecord::Migration
  def up
    remove_column :names, :user_id
  end

  def down
    add_column :names, :user_id, :integer
  end
end




DATA MOVER SCRIPT...


require 'rubygems'

User.all.each do |u|

  names = Name.find_all_by_user_id(u.id)

  names.each do |n|
    un = UserNames.new( :user_id => u.id, :name_id => n.id, :position => 
n.position )
    un.save
  end

end



So with all that in place and data mover run console gives me errors...

ruby-1.9.2-p290 :006 > User.first.names
  User Load (1.4ms)  SELECT "users".* FROM "users" ORDER BY 
lower(username) ASC LIMIT 1
NameError: uninitialized constant User::UserName

(other error out cut)

What am I doing wrong ?
Do my model relationships and data mover script look ok?

Attachments:
http://www.ruby-forum.com/attachment/7202/schema.rb


-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to