Rails 中 #<#<Class:0x007f05d8ec12d0>:0x007f05d8fa9be8> 的未定义方法
undefined method for #<#<Class:0x007f05d8ec12d0>:0x007f05d8fa9be8> in Rails
您好,我是 rails ruby 的初学者,我正在制作一份用于获取学生信息的表格。我在这里遇到的问题:
我的查看代码是:
<div class="row">
<div class="col-md-6 col-md-offset-3">
<%= form_for(@userinfo) do |f| %>
<%= render 'shared/error_messages' %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.submit "Create my account", class: "btn btn-primary" %>
<% end %>
</div>
</div>
我的控制器代码是:
def new
@userinfo= Userinfo.new
end
我的路线是:
get 'about' => 'userinfo#new'
我收到错误:"undefined method `userinfos_path' for #<#:0x007f05d8fa9be8> "
我是初学者。如何解决这个问题呢。需要帮忙。谢谢。
您没有用户信息的路由。
尝试在您的 config/routes.rb 中添加:
resources :userinfos
希望对您有所帮助。
它给你例外的原因是你只是在你的视图中使用 form_for(@userinfo)
,它会智能地为你生成表单操作。
很简单,你可以指定表单属性,比如
form_for(@userinfo, url: '/about/create')
,如需更多 Rails 方式,您需要添加 method: :put
示例如下:
ruby
form_for @userinfo, url: '/about/create', method: :put, html: { class: 'form-horizontal' }
否则,@Archie Reyes 的回答很有效。
您好,我是 rails ruby 的初学者,我正在制作一份用于获取学生信息的表格。我在这里遇到的问题:
我的查看代码是:
<div class="row">
<div class="col-md-6 col-md-offset-3">
<%= form_for(@userinfo) do |f| %>
<%= render 'shared/error_messages' %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.submit "Create my account", class: "btn btn-primary" %>
<% end %>
</div>
</div>
我的控制器代码是:
def new
@userinfo= Userinfo.new
end
我的路线是:
get 'about' => 'userinfo#new'
我收到错误:"undefined method `userinfos_path' for #<#:0x007f05d8fa9be8> "
我是初学者。如何解决这个问题呢。需要帮忙。谢谢。
您没有用户信息的路由。
尝试在您的 config/routes.rb 中添加:
resources :userinfos
希望对您有所帮助。
它给你例外的原因是你只是在你的视图中使用 form_for(@userinfo)
,它会智能地为你生成表单操作。
很简单,你可以指定表单属性,比如
form_for(@userinfo, url: '/about/create')
,如需更多 Rails 方式,您需要添加 method: :put
示例如下:
ruby
form_for @userinfo, url: '/about/create', method: :put, html: { class: 'form-horizontal' }
否则,@Archie Reyes 的回答很有效。