Réponses:
<%= f.submit 'name of button here', :class => 'submit_class_name_here' %>
Cela devrait suffire. Si vous obtenez une erreur, il est probable que vous ne fournissiez pas le nom.
Alternativement, vous pouvez styliser le bouton sans classe:
form#form_id_here input[type=submit]
Essayez cela aussi.
disable_with
ces boutons de soumission, mais ils ne semblent jamais fonctionner. Y a-t-il une raison à votre connaissance? +1
submit
pour utiliser le hachage: class comme dans la réponse ci-dessus. Si vous n'avez pas cette chaîne, vous obtiendrez un message d'erreur.
Vous pouvez ajouter une déclaration de classe au bouton d'envoi d'un formulaire en procédant comme suit:
<%= f.submit class: 'btn btn-default' %>
<- Remarque: il n'y a pas de virgule!
Si vous modifiez un _ form.html.erb partiel d'un échafaudage et que vous souhaitez conserver la modification dynamique du nom du bouton entre les actions du contrôleur, NE spécifiez PAS de nom 'name'
.
Sans spécifier de nom et selon l'action du rendu du formulaire, le bouton obtiendra la .class = "btn btn-default"
(classe Bootstrap) (ou tout .class
ce que vous spécifiez) avec les noms suivants:
Mettre à jour nom_modèle
Créer model_name
(où model_name le nom du modèle de l'échafaudage)
<%= f.submit nil, :class => 'btn btn-primary' %>
Donne quelque chose comme:
nil
du nom conserve le comportement par défaut de l'assistant où, s'il trouve une variable d'instance pour l'objet créé / affiché, comme @person
, il nommera le bouton en conséquence (Update Foo ou Create Foo) et aussi le form_for
FormBuilder choisit l'action correcte. Ainsi, vous pouvez extraire le code du formulaire dans un partiel et l'utiliser pour afficher l'objet modèle (si vous souhaitez utiliser un formulaire pour l'afficher), le mettre à jour et créer également une nouvelle instance.
Comme le dit Srdjan Pejic, vous pouvez utiliser
<%= f.submit 'name', :class => 'button' %>
ou la nouvelle syntaxe qui serait:
<%= f.submit 'name', class: 'button' %>
Pour ceux qui utilisent Rails 5.2 avec l' form_with
aide: n'ajoutez pas la virgule !
<%= f.submit class: 'btn btn-primary' %>
HTH!
Par défaut, Rails 4 utilise l'attribut 'value' pour contrôler le texte du bouton visible, donc pour garder le balisage propre, j'utiliserais
<%= f.submit :value => "Visible Button Text", :class => 'class_name' %>