我希望我的輸入id
爲user[email]
而不是user_email
。但是我嘗試的一切都不起作用。如何在我的form_helper中強制輸入字段的ID?
我對這些寶石使用Devise的最新版本。
這是我的形式:
<%= form_for(resource, :as => resource_name, :class => "send-with-ajax", :url => user_registration_path(resource), :validate => true, :html => { :id => 'user_new' }) do |f| %>
<div class="six columns alpha">
<%= f.text_field :email, :id => 'user[email]', :placeholder => "[email protected]", :input_html => {:autofocus => true}, :validate => true %>
</div>
<div class="three columns sign-up alpha">
<%= f.submit :label => "Submit", :value => "Sign Me Up!" %>
<div class="ajax-response"><%= devise_error_messages! %></div>
</div>
<% end %>
這是生成的HTML:
<form accept-charset="UTF-8" action="/users" class="formtastic user" data-validate="true" id="user_new" method="post" novalidate="novalidate"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /><input name="authenticity_token" type="hidden" value="khstyw72jj44kkhaskdya3hkb3ba3lkxmw4=" /></div>
<div class="six columns alpha">
<input data-validate="true" id="user_email" input_html="{:autofocus=>true}" name="user[email]" placeholder="[email protected]" size="30" type="text" />
</div>
<div class="three columns sign-up alpha">
<input label="Submit" name="commit" type="submit" value="Sign Me Up!" />
<div class="ajax-response"></div>
</div>
</form>
的思考?
我認爲像你這樣指定id會覆蓋默認值,不要猜測。所以我不能幫你 - 但是想指出'input_html => {:autofocus => true}'不能像你期望的那樣工作。我傾向於使用這裏的默認導軌命名,在這個東西上打鐵可能會受到傷害。 – house9
它是做什麼的?我如何強制本地重新加載?我拿出':input_html =>',它並不反映我何時刷新頁面。 – marcamillion