Advertisement
Noah-Huppert

RoR Association Problem

Aug 1st, 2014
302
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rails 1.46 KB | None | 0 0
  1. ========== Example of problem ==========
  2. @user = User.create(gid: foo, permissions: bar)
  3. @gapiToken = @user.gapiToken.create(access_token: foo, token_type: bar, expires_on: bazz, refresh_token: bop)
  4. #^ Error ^ "undefined method `create' for nil:NilClass"
  5.  
  6. ========== Models ==========
  7. #./app/models/user.rb
  8. class User < ActiveRecord::Base
  9.   has_many :userSessions
  10.   has_one :gapiToken
  11. end
  12.  
  13.  
  14. #./app/models/user_session.rb
  15. class UserSession < ActiveRecord::Base
  16.   belongs_to :user
  17. end
  18.  
  19.  
  20. #./app/models/gapi_token.rb
  21. class GapiToken < ActiveRecord::Base
  22.   belongs_to :user
  23. end
  24.  
  25.  
  26. ========== Migrations ==========
  27. #./db/migrate/xxxxxx_create_users.rb
  28. class CreateUsers < ActiveRecord::Migration
  29.   def change
  30.     create_table :users do |t|
  31.       t.string :gid
  32.       t.string :permissions
  33.  
  34.       t.timestamps
  35.     end
  36.   end
  37. end
  38.  
  39.  
  40. #./db/migrate/xxxxxx_create_user_sessions.rb
  41. class CreateUserSessions < ActiveRecord::Migration
  42.   def change
  43.     create_table :user_sessions do |t|
  44.       t.belongs_to :user
  45.       t.string :sid
  46.       t.string :secret
  47.       t.datetime :expires_on
  48.  
  49.       t.timestamps
  50.     end
  51.   end
  52. end
  53.  
  54.  
  55. #./db/migrate/xxxxxx_create_gapi_tokens.rb
  56. class CreateGapiTokens < ActiveRecord::Migration
  57.   def change
  58.     create_table :gapi_tokens do |t|
  59.       t.belongs_to :user
  60.       t.string :access_token
  61.       t.string :token_type
  62.       t.datetime :expires_on
  63.       t.string :refresh_token
  64.  
  65.       t.timestamps
  66.     end
  67.   end
  68. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement