Question

Je vais avoir des difficultés à ajouter à un Beaucoup Par association en utilisant user_ids.

Mon modèle de communication ressemble à ceci:

class communication
 has_many :recipients
 has_many :users, :through => :recipients
end

Dans mon action pour créer le contrôleur de communication que je suis en train d'ajouter manuellement user_ids à l'objet de communication comme ceci:

@communication = new Communications(params[:communication])
@communication.user_ids << id
logger.debug @communication.user_ids # is empty

Je ne peux pas comprendre pourquoi @communication.user_ids tableau est vide, même quand je fais un identifiant codé en dur comme ceci:

@communication = new Communications(params[:communication])
@communication.user_ids << 1
logger.debug @communication.user_ids # is still empty!

Je suis toujours obtenir un tableau de @communication.user_ids vide.

Est-ce que je manque quelque chose avec ma méthode? Tous les conseils pour obtenir ce travail?

Merci d'avance!

Était-ce utile?

La solution

Comme il est un has_many :through, vous avez besoin peut-être de fournir des objets pleins de telle sorte que la relation peut être créée en douceur. Essayez ceci:

@communication = Communication.new params[:communication]
@communication.users << User.find( 1 )
@communication.user_ids  # should be [ 1 ]
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top