为什么在 Rails 4.2 中使用 redirect_to 时会出现参数数量错误的错误?
Why is there a wrong number of arguments error when using redirect_to in Rails 4.2?
在Rails 4.1.1版本的应用程序中,我在articles_controller中有以下创建方法:
def create
@article = Article.new(article_params)
authorize @article
if @article.save
flash[:notice] = "Successfully created article."
redirect_to edit_article_path(@article)
else
render :new
end
end
然而,在更新到 Rails 4.2 后尝试重定向时出现以下错误:
wrong number of arguments (2 for 1)
为什么会出现这个错误,如何解决?
问题是由包含过时版本的 Turbolinks (2.2.2) 的 Gemfile 引起的。我通过将 Turbolinks 升级到版本 2.5.3 解决了这个问题。
在 Gemfile 中:
gem 'turbolinks', '~> 2.5.3'
在Rails 4.1.1版本的应用程序中,我在articles_controller中有以下创建方法:
def create
@article = Article.new(article_params)
authorize @article
if @article.save
flash[:notice] = "Successfully created article."
redirect_to edit_article_path(@article)
else
render :new
end
end
然而,在更新到 Rails 4.2 后尝试重定向时出现以下错误:
wrong number of arguments (2 for 1)
为什么会出现这个错误,如何解决?
问题是由包含过时版本的 Turbolinks (2.2.2) 的 Gemfile 引起的。我通过将 Turbolinks 升级到版本 2.5.3 解决了这个问题。
在 Gemfile 中:
gem 'turbolinks', '~> 2.5.3'