44 votes

Comment remplacer le nom de la classe dans l'assistant form_for ?

J'ai besoin d'ajouter des noms de classe à mon formulaire. J'utilise l' form_for Rails pour ce faire. J'ai essayé d'ajouter { :class => 'classname' } en vain.

Comment puis-je ajouter des classes à cette sortie d'assistance Rails ?

92voto

Harish Shetty Points 38877

Essaye ça:

 form_for @order, :html => {:class => "foo"}

7voto

Daniel Points 2619

Pour Rails 4.0, voici l'exemple des guides :

http://guides.rubyonrails.org/form_helpers.html

1.2 Hachages multiples dans les appels d'aide au formulaire

 form_tag(controller: "people", action: "search", method: "get", class: "nifty_form")
# => '<form accept-charset="UTF-8" action="/people/search?method=get&class=nifty_form" method="post">'

2voto

Xinyang Li Points 4108

Code Ruby ci-dessous,

 <%= form_for :article, :html => { :class => "article-form" } do |form| %>
    <p>
        <%= form.label :title %>
        <%=
        form.text_field :title,
            placeholder: "A******'s title"
        %>
    </p>
    <p>
        <%= form.label :text %>
        <%=
        form.text_field :text,
            placeholder: "A******'s content"
        %>
    </p>
    <p>
        <%= form.submit %>
    </p>
<% end %>

Sortie HTML ci-dessous,

 <form class="article-form" action="/articles/new" accept-charset="UTF-8" method="post"><input name="utf8" type="hidden" value=""><input type="hidden" name="authenticity_token" value="BRBjb0maKb5kNbGXV0wwoLeFUV6El2la/sOwweWhyN+nEIOK2Wam5Xz8PasZtpwvmiCF7yIO8Pab/OR2uoeZQA==">
    <p>
        <label for="article_title">Title</label>
        <input placeholder="A******'s title" type="text" name="article[title]" id="article_title">
    </p>
    <p>
        <label for="article_text">Text</label>
        <input placeholder="A******'s content" type="text" name="article[text]" id="article_text">
    </p>
    <p>
        <input type="submit" name="commit" value="Save Article">
    </p>
</form>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X