我正在使用Rails 4,Ruby 2.2以及最新版本的Devise'gem。Ruby on Rails設計自定義窗體 - 窗體不在編輯上更新
到目前爲止,我已經生成了一個設計用戶資源,並創建了一個具有自定義字段(firstName,lastName等)的遷移。這工作得很好。
我創建了一個強大的參數我的應用程序控制器,在這裏看到:
before_action :configure_permitted_parameters, if: :devise_controller?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:username, :password, :email, :firstName, :lastName, :dateofBirth, :address1, :address2, :city, :state, :zip)}
end
我開始創建我的終端上的色器件命令的用戶資源視圖。我通過rake檢查了我的路由,以確保我在URL「/ users/sign_up」上加載了「new.html.erb」文件。
我遇到的問題是當我去更新我的新註冊表單時,它不會更新!我已經更改了代碼以包含其他字段,但它仍然顯示與設計(電子郵件,密碼,密碼確認)相同的標準格式,即使在通過路線鏈接的erb文件中,我已經明確添加了三個字段用戶名和名字和姓氏。
我試過編輯標題,甚至不更新!當我更新其他視圖文件時,它們更新得很好,所以它不是一個總體視圖問題。
這是我對「new.html.erb」代碼:
<h2>Sign up</h2>
<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div class="field">
<%= f.label :username %><br />
<%= f.text_field :username, autofocus: true %>
</div>
<div class="field">
<%= f.label :firstName %><br />
<%= f.text_field :firstName %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.email_field :email %>
</div>
<div class="field">
<%= f.label :password %>
<% if @minimum_password_length %>
<em>(<%= @minimum_password_length %> characters minimum)</em>
<% end %><br />
<%= f.password_field :password, autocomplete: "off" %>
</div>
<div class="field">
<%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation, autocomplete: "off" %>
</div>
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>
<%= render "users/shared/links" %>
我猜測的色器件創業板可能會改寫用戶特定視圖和發送默認視圖(這可以解釋沒有更新) ,但是如果這確實是問題,我不確定如何解決這個問題。
在此先感謝!
是當我去更新我的註冊新形式,它不會更新!***? – Pavan
我已經更改了代碼以包含其他字段,但它仍然顯示與設計(電子郵件,密碼,密碼確認)相同的標準格式,即使在通過路徑鏈接的erb文件中,我已明確添加了三個用戶名和名字和姓氏的字段。 @Pavan – CodeFromthe510
我很困惑。更新操作是否也使用'new.html.erb'? – Pavan