gpt4 book ai didi

ruby-on-rails - 添加新字段导致错误

转载 作者:太空宇宙 更新时间:2023-11-03 18:06:50 24 4
gpt4 key购买 nike

在我的注册页面中,我有 2 个字段,带有电子邮件和密码,现在我尝试添加带有名称的新字段,以便提交 /app/views/devise/registrations/new.html.erb/app/views/devise/registrations/edit.html.erb我添加了

<div class="form-group">
<%= f.label :name, "Name" %>
<%= f.text_field :name, class: "form-control", :autofocus => true %>
</div>

在此编辑后我的网站显示此错误:

 Rendering devise/registrations/new.html.erb within layouts/application

我的 new.html.erb :

<div class="panel panel-default">
<div class="panel-heading"><h2>Registration</h2></div>
<div class="panel-body">


<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>

<div class="form-group">
<%= f.label :name, "Name" %>
<%= f.text_field :name, class: 'form-control', :autofocus => true %>
</div>



<div class="form-group">
<%= f.label :email %><br />
<%= f.email_field :email, autofocus: true, class: 'form-control' %>
</div>



<div class="form-group">
<%= f.label :password %>
<% if @minimum_password_length %>
<em>(<%= @minimum_password_length %> characters minimum)</em>
<% end %><br />
<%= f.password_field :password, autocomplete: "off", class: 'form-control' %>
</div>

<div class="actions">
<%= f.submit "Sign up", class: 'btn btn-primary' %>
</div>
<% end %>
</div>
<div class="panel-footer"><%= render "devise/shared/links" %></div>

</div>

我是不是哪里弄错了?

__编辑

重启heroku后出现新错误:

Completed 500 Internal Server Error in 2ms (ActiveRecord: 0.0ms)
app/controllers/application_controller.rb:11:in `configure_permitted_parameters'

我的:/app/controllers/application_controller.rb

class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_filter :configure_permitted_parameters, if: :devise_controller?


protected


def configure_permitted_parameters

devise_parameter_sanitizer.for(:sign_up) << :name

devise_parameter_sanitizer.for(:account_update) << :name

end
end

最佳答案

试试这个,这会对你有帮助。

 class ApplicationController < ActionController::Base
before_action :configure_permitted_parameters, if: :devise_controller?

protected

def configure_permitted_parameters
added_attrs = [:username, :email, :password, :password_confirmation, :remember_me]
devise_parameter_sanitizer.permit :sign_up, keys: added_attrs
devise_parameter_sanitizer.permit :account_update, keys: added_attrs
end
end

或点击此链接,follow

关于ruby-on-rails - 添加新字段导致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43307494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com