diff --git a/app/models/retirement.rb b/app/models/retirement.rb new file mode 100644 index 0000000..5f11d17 --- /dev/null +++ b/app/models/retirement.rb @@ -0,0 +1,4 @@ +class Retirement < ActiveRecord::Base + attr_accessible :employee_contrib, :employer_contrib, :total, :user_id + belongs_to :user +end diff --git a/app/models/user.rb b/app/models/user.rb index 8743bad..749cb07 100755 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -10,7 +10,8 @@ class User < ActiveRecord::Base validates_format_of :email, :with => /.+@.+\..+/i attr_accessor :skip_user_id_assign before_save :assign_user_id, :on => :create - + has_one :retirement, :foreign_key => :user_id, :primary_key => :user_id + def self.authenticate(email, password) @@ -28,7 +29,7 @@ class User < ActiveRecord::Base end return auth end - + def assign_user_id unless @skip_user_id_assign.present? user = User.order("user_id").last diff --git a/db/migrate/20130424220355_create_users.rb b/db/migrate/20130424220355_create_users.rb index f8d5e23..59967a0 100755 --- a/db/migrate/20130424220355_create_users.rb +++ b/db/migrate/20130424220355_create_users.rb @@ -6,7 +6,7 @@ class CreateUsers < ActiveRecord::Migration t.boolean :admin t.string :first_name t.string :last_name - t.string :user_id + t.integer :user_id t.timestamps end diff --git a/db/migrate/20130524222129_create_retirements.rb b/db/migrate/20130524222129_create_retirements.rb new file mode 100644 index 0000000..4da11ae --- /dev/null +++ b/db/migrate/20130524222129_create_retirements.rb @@ -0,0 +1,12 @@ +class CreateRetirements < ActiveRecord::Migration + def change + create_table :retirements do |t| + t.string :total + t.string :employee_contrib + t.string :employer_contrib + t.integer :user_id + + t.timestamps + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 01d1c8b..4d7b5c8 100755 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,16 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20130424220355) do +ActiveRecord::Schema.define(:version => 20130524222129) do + + create_table "retirements", :force => true do |t| + t.string "total" + t.string "employee_contrib" + t.string "employer_contrib" + t.integer "user_id" + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false + end create_table "users", :force => true do |t| t.string "email" @@ -19,7 +28,7 @@ ActiveRecord::Schema.define(:version => 20130424220355) do t.boolean "admin" t.string "first_name" t.string "last_name" - t.string "user_id" + t.integer "user_id" t.datetime "created_at", :null => false t.datetime "updated_at", :null => false end diff --git a/test/fixtures/retirements.yml b/test/fixtures/retirements.yml new file mode 100644 index 0000000..ee49de8 --- /dev/null +++ b/test/fixtures/retirements.yml @@ -0,0 +1,13 @@ +# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html + +one: + total: MyString + employee_contrib: MyString + employer_contrib: MyString + user_id: MyString + +two: + total: MyString + employee_contrib: MyString + employer_contrib: MyString + user_id: MyString diff --git a/test/unit/retirement_test.rb b/test/unit/retirement_test.rb new file mode 100644 index 0000000..02aa836 --- /dev/null +++ b/test/unit/retirement_test.rb @@ -0,0 +1,7 @@ +require 'test_helper' + +class RetirementTest < ActiveSupport::TestCase + # test "the truth" do + # assert true + # end +end