Bonjour,
Je travaille avec Ruby on rails.
Dans mon application j’ai un formulaire ou je demande de rentrer
l’adresse e-mail. Cependant j’ai besoin de donner la possibilité de
rentrer plusieurs adresses e-mail sans restriction de nombre. Donc j’ai
créé un bouton qui a base d’AJAX ajoute un nouveau champ pour rentrer
une nouvelle adresse. Mon problème est que si l’une des adresses est
erronée j’ai un message d’erreur (celui générée automatiquement par
rails après mon Validates_on_format dans mon modèle) mais sur la page
qui s’affiche il n’y a qu’un champ d’adresse même s’il y en avait
plusieurs avant. De plus ce champ est vide alors que les autres champs
(nom, numéro de téléphone…) reste avec les valeurs qui avaient été
rentré avant l’erreur de validation.
Mon code:
dans mon formulaire.rhtml j’ai:
Nom
<%= text_field 'profil', 'nom' %>
Numéro de Téléphone
<%= text_area 'profil', 'téléphone' %>
Email
def new
session[:nombre_emails]=nil
end
def create
@profile = Profile.new(:title=>params[:profile][:nom],
:description=>params[:profile][:telephone]
)
number_of_emails = session[:number_of_emails]?
session[:number_of_emails].to_i : 0
for i in 0…nombre_emails
@profile.source<<Source.new(:email=>params[‘email_’+i.to_s])
end
if @idea.save
flash[:notice] = ‘Profile bien sauve.’
redirect_to :action => ‘menu’
else
session[:nombre_emails]=0
render :action => ‘new’
end
end
dans mon _ajout_email.rhtml: