Ruby on rails 用户中的命名错误“新建”;未定义的方法'的“简单形式”;对于#<#&书信电报;类别:0x9f9b568>;:0xaa02440>&引用;
视图/用户中的My new.html.erb代码:Ruby on rails 用户中的命名错误“新建”;未定义的方法'的“简单形式”;对于#<#&书信电报;类别:0x9f9b568>;:0xaa02440>&引用;,ruby-on-rails,nomethoderror,Ruby On Rails,Nomethoderror,视图/用户中的My new.html.erb代码: <h1>Sign Up</h1> <%= simple_form_for(@user) do |f| %> <%= f.input :username %> <%= f.input :password %> <%= f.input :password_confirmation %> <%= f.button :submit %> <% en
<h1>Sign Up</h1>
<%= simple_form_for(@user) do |f| %>
<%= f.input :username %>
<%= f.input :password %>
<%= f.input :password_confirmation %>
<%= f.button :submit %>
<% end %>
但问题是把它放在哪里。
这也是我的用户\u controller.rb:
class UsersController < ApplicationController
def new
@user = User.new
end
def create
@user = User.new(params[:user])
if @user.save
redirect_to @user, notice: 'User was successfully created.'
else
render action: "new"
end
end
def show
@user = User.find(params[:id])
end
end
class UsersController
这根本不是它所期望的
simple\u form\u for
意味着您的应用程序希望有simple form()gem可用,它为您的表单提供了该方法。您应该通过将gem添加到gem文件中来安装gem,或者重写表单以使用Rails表单帮助程序而不是简单表单。您的问题是Rails无方法简单表单
您可以尝试使用表单
请阅读更多错误基本上是说方法的
simple\u form\u不可用(如您所知)
解决方案是确定该方法是什么,以及需要如何使用
此错误是由于简单表单在应用程序中不可用造成的
要包含它,您只需添加gem:
#Gemfile
gem 'simple_form'
--
如果您没有安装simple\u form
gem,您可以使用Rails解决此问题,Rails与之没有太大区别:
<%= form_for @user do |f| %>
<%= f.text_field :username %>
<%= f.password_field :password %>
<%= f.password_field :password_confirmation %>
<%= f.submit %>
<% end %>
如果它找不到方法,但您已经安装了gem。在这种情况下,我想您忘记重新启动服务器了。重新启动服务器,它就会工作 Gemfile:gem'bootstrap sass'
创业板“简单形式”
您必须具有引导设置
“rails生成简单表单:安装--引导”我假设您正在尝试使用这个gem?:。如果是这样的话,按照描述将其正确地包含在您的GEM文件中应该可以让它正常工作。您不必自己定义此方法。我尝试了使用form_for代替simple_form_for的方法,结果显示:undefined method'users_path'for#
您有哪些路由?我确实安装了gem,但安装了bootstrap,它是您应用程序的一部分,也就是说,包含在你的gem文件中
?嗯。你能试着从中删除=
吗?还是一样。。。没有区别
#Gemfile
gem 'simple_form'
<%= form_for @user do |f| %>
<%= f.text_field :username %>
<%= f.password_field :password %>
<%= f.password_field :password_confirmation %>
<%= f.submit %>
<% end %>