Question

Dans le contrôleur, comment puis-je ajouter une variable à la fin d'un paramètres []?

Si j'essaye ceci, j'obtiens une variable d'erreur: params [: group_] +

Comment faire?


Modifier par demande

Ok, j'ai un formulaire qui définit des groupes de boutons radio avec des noms comme celui-ci:

groupe_01drn0

Évidemment, j'ai différents groupes dans le formulaire (groupe_01aai0, groupe_01aui0, etc.) et la valeur est définie en fonction du bouton radio sélectionné dans le groupe:

Le bouton radio "Group_01drn0" pourrait avoir une valeur de "21" ou "22" ou "23", du bouton radio "Group_01aai0" pourrait avoir une valeur de "21" ou "22" ou "23", etc.

Dans la base de données, j'ai chaque code (01drn0, 01aai0, 01aui0, etc.), je veux donc les sélectionner dans db et itérer dans la valeur des params afin que je puisse obtenir la valeur du groupe de boutons radio, j'ai essayé cela sans chance:

@codes=Code.get_codes
for c in @codes
  @all=params[:group_] + c.name
end

Merci.

Était-ce utile?

La solution

params looks like a hash, but it really isn't. So if you need to "augment" params as you deal with the incoming data in your controller, invent a new data structure that includes either params or its members.

Added:

Maybe you're looking for

@codes=Code.get_codes
@all = []    
for c in @codes
  @all << params["group_#{c.name}"]
end

Autres conseils

p = params
p[:new_param_name] = new_param_value

It works for me (rails 3.2). Nota: using p instead of altering params avoids altering original parameters.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top