j'ai deux modèles ici: Package
et Status
la difficulté à mettre à jour un attribut avec une association attachée à elle
Package belongs_to
statut
Statut has_many
paquets
Alors, mon modèle de paquet a une colonne status_id
Dans mon contrôleur de paquets, j'ai cette méthode (qui reçoit des données d'un appel POST ajax):
def edit_status
@status = Status.find_by_name(params[:status])
Package.update(params[:id], :status_id => @status.id)
end
Mais c'est bizarre ... Je ne peux pas obtenir status_id
pour mettre à jour pour sauver ma vie. Si je change la colonne status_id
pour toute autre colonne dans l'enregistrement (tel que from_name
) alors cela fonctionne très bien. Je me sens comme si je prenais des pilules folles ici, mais des idées pour lesquelles cela pourrait ne pas fonctionner?
est-status_id protégé contre la cession de masse? L'objet d'état est-il résolu correctement avant le Package.update (consigner sa valeur dans la console)? – Coderama
status_id n'est pas protégé (il n'y a actuellement pas de validations/protections en place dans les modèles Package ou Status). Et l'objet d'état est en effet résolu correctement (je l'ai enregistré pour vérifier). – Shpigford