J'ai un peu de problème sur ma forme d'édition. Pour une raison quelconque, mon assistant de sélection ne fonctionne pas correctement sur l'action Modifier. Il semble ignorer pour une raison quelconque de l'option: Invite => True et ne montre pas le message "Veuillez sélectionner". Mais seulement sur l'action de modification, la nouvelle action fonctionne simplement bien.
L'extrait de la forme partielle: p> L'action d'édition p> def new
@page = Page.new
@categories = Category.where(:cat_type=>"page").map { |c| [t("category.#{c.slug}",:default=>"#{c.name}"), c.id] }
respond_to do |format|
format.html # new.html.erb
format.json { render json: @page }
end
end
4 Réponses :
f.select :category_id, @categories.unshift(["whatever your prompt says", value])
Nice, cela m'aurait pris beaucoup de temps pour comprendre la première solution!
J'ai eu cette erreur une variable locale indéfinie ou une méthode "de la valeur" pour
de APIDOCK:
f.select :category_id, options_from_collection_for_select(@categories, :id, :name), {prompt: 'Please select ...' }, { class: 'form-control' }
Sélectionnez l'option pour le formulaire pour la méthode avec la valeur d'invite et la classe d'options HTML: p> p>
Cela fonctionne comme prévu. Il ne montre pas l'invite si une valeur a été sélectionnée et enregistrée précédemment. P>
invite vs. SELECT - "La principale différence est que si le SELECT a déjà une valeur, alors: l'invite ne montrera pas tandis que: Inclure_blank toujours." P>
Reportez-vous à Cette API Note . p>