Я использую Devise для регистрации пользователей.Это автоматически дает мне форму для нового сеанса:
<%= form_for(resource_name, resource, :url => session_path(resource_name)) do |f| %>
.
.
.
<% end %>
У меня есть адрес электронной почты и метка пароля и поля, такие как:
<div class = "field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<div class = "field">
<%= f.label :password %><br />
<%= f.password_field :password %>
</div>
Но я хотел бы добавить классполя text_field и password_field, чтобы я мог оформить поля, чтобы они выглядели лучше.
<%= f.text_field :email, :class => "whatever" %>
не сработало, поэтому я заглянул в Rails API, нашел метод text_field и сделал следующее:
<%= text_field(:user, :email, :class => "whatever" ) %>
, который пропускает "f", вызванный в "form_for"...do | f | ".Несмотря на это, я почти уверен, что это сработало, потому что, когда я "Просмотреть исходный код", выходные данные ("id" и "name") совпадают:
<div class = "field">
<label for="user_email">Email</label><br />
<input id="user_email" name="user[email]" size="30" type="text" value="" />
</div>
<div class = "field">
<label for="user_email">Email</label><br />
<input class="whatever" id="user_email" name="user[email]" size="30" type="text" value="" />
</div>
Все это прекрасно, что работает и источникПохоже, что все в порядке, но я просто хочу получить подтверждение от более опытных разработчиков, чтобы убедиться, что это определенно работает и что за кадром нет ничего плохого, прежде чем я внесу изменения и у меня возникнут проблемы позже.