Ruby on rails 未定义的方法`model#u name';课程名称:Clas
我在Rails3.2中使用Desive时遇到了一个错误-我的观点是在下面的第1行(用户)中使用了未定义的方法。此视图是登录用户的编辑配置文件页面 到目前为止,我已经尝试将其更改为当前_用户,并在我的控制器中定义它,我在下面提供了控制器,但这不起作用 我唯一的另一个怀疑是,表单_for不适合在本页上使用Ruby on rails 未定义的方法`model#u name';课程名称:Clas,ruby-on-rails,devise,Ruby On Rails,Devise,我在Rails3.2中使用Desive时遇到了一个错误-我的观点是在下面的第1行(用户)中使用了未定义的方法。此视图是登录用户的编辑配置文件页面 到目前为止,我已经尝试将其更改为当前_用户,并在我的控制器中定义它,我在下面提供了控制器,但这不起作用 我唯一的另一个怀疑是,表单_for不适合在本页上使用 <%= form_for(@user) do |f| %> <% if @user.errors.any? %> <div id="error_expla
<%= form_for(@user) do |f| %>
<% if @user.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@user.errors.count, "error") %> prohibited this user from being saved:</h2>
<ul>
<% @user.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :username %><br>
<%= f.text_field :username %>
</div>
<div class="field">
<%= f.label :firstname %><br>
<%= f.text_field :firstname %>
</div>
<div class="field">
<%= f.label :lastname %><br>
<%= f.text_field :lastname %>
禁止保存此用户:
我的控制器。。。(正如我所说,我尝试了当前用户)
class UsersController
Desive附带了一个当前用户
助手方法。您可能不想覆盖它,因此我建议从控制器中删除该方法。在我的一个应用程序中,我允许用户编辑他们的信息,这是我的edit
方法:
def edit
@user = current_user
end
仔细检查
@user
是否为零:您必须在编辑
操作中添加@user
,或者直接向方法添加id,或者使用一些筛选器,因为您有私有的设置用户
方法,即在设置筛选器之前添加:设置用户,only::edit
ir类似的内容。@zrl3dx我在\u filter之前添加了一个新错误:“找不到没有ID的用户”与私人中的set\u User方法冲突
def edit
@user = current_user
end