微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – M.Hartl的Rails教程7.4.1中错误的参数数量(2个为1)错误

我一直在关注最新版本的M.Hartl的Rails教程,我在第7.4.1章遇到了一个问题.我创建了一个用户控制器的新操作相关联的注册表单.当表单提交有效信息时,控制器应重定向新用户配置文件,但是我在下面发生错误

我已经包含了routes.rb代码以及Users控制器代码.谁能帮助我?

当我访问url ../users/1时,页面实际上呈现了我的用户,因此我知道用户已经创建并保存到数据库中.我不知道是否可能是redirect_to方法的实现错误

任何帮助将不胜感激!

UsersController中的ArgumentError #create
错误的参数数量(2为1)

提取的来源(第19行):

private
  def _compute_redirect_to_location_with_xhr_referer(options)
    store_for_turbolinks begin
      if options == :back && request.headers["X-XHR-Referer"]
        _compute_redirect_to_location_without_xhr_referer(request.headers["X-XHR-Referer"])

用户控制器:

class UsersController < ApplicationController

  def new
    @user = User.new
  end

  def show
    @user = User.find(params[:id])
  end

  def create
    @user = User.new(user_params)  
    if @user.save
      flash[:success] = "Welcome to the Sample App!"
      redirect_to @user
    else
      render 'new'
    end
  end

  private 

    def user_params
      params.require(:user).permit(:name,:email,:password,:password_confirmation)
    end
end

Routes.rb:

Rails.application.routes.draw do
  root             'static_pages#home'
  get 'help'    => 'static_pages#help'
  get 'about'   => 'static_pages#about'
  get 'contact' => 'static_pages#contact'
  get 'signup'  => 'users#new'
  resources :users
end

解决方法

看起来您的turbolinks版本已经过时了.尝试更新到最新版本:

宝石’turbolinks’,’〜> 2.3.0′

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐