ActiveRecord::AssociationTypeMismatch: attendu, a obtenu Fixnum
Je ne comprends pas pourquoi j'obtiens l'erreur suivante:
ActiveRecord::AssociationTypeMismatch: User(#29943560) expected, got Fixnum
quand je fais ça dans la console rails: @game = Game.create(:player => 1060, :played => 1061)
Je veux juste créer un nouveau Game
concernant les associations des modèles ci-dessous.
class User < ActiveRecord::Base
has_many :game_as_player, :class_name => 'Game', :foreign_key => 'player_id'
has_many :game_as_played, :class_name => 'Game', :foreign_key => 'played_id'
end
class Game < ActiveRecord::Base
belongs_to :player, :class_name => 'User'
belongs_to :played, :class_name => 'User'
attr_accessible :player, :played, :score, :details, :viewed, :read
end
Si quelqu'un a une idée...
Merci beaucoup!
En fonction de votre association, payeur et joué représentent le même utilisateur(user_id). Je ne pense pas que vous devriez être en paramètre identifiants différents pour le joueur et joué.
OriginalL'auteur Gozup | 2013-06-27
Vous devez vous connecter pour publier un commentaire.
Il dit juste qu'il veulent un Utilisateur et de vous donner un Fixnum
Vous devriez faire quelque chose comme
Ou, si vous voulez donner aux utilisateurs par des id
OriginalL'auteur yannick