Ruby on rails “未定义的方法”;删除“;关于重定向到

Ruby on rails “未定义的方法”;删除“;关于重定向到,ruby-on-rails,ruby,Ruby On Rails,Ruby,当我使用gem进行身份验证时,试图通过auth url重定向用户会返回错误 “未定义的#方法‘删除’” 原因我不完全清楚。这是我的密码: class UserFormsController < ApplicationController layout 'admin' before_action :set_user_form, only: [:show, :edit, :update, :destroy] before_action :g_auth_user # GET /

当我使用gem进行身份验证时,试图通过auth url重定向用户会返回错误

“未定义的#方法‘删除’”

原因我不完全清楚。这是我的密码:

class UserFormsController < ApplicationController
  layout 'admin'
  before_action :set_user_form, only: [:show, :edit, :update, :destroy]
  before_action :g_auth_user

  # GET /user_forms
  def index
    @user_forms = UserForm.all
    redirect_to @auth_url
  end

[...]

  def g_auth_user
    credentials = Google::Auth::UserRefreshCredentials.new(
      client_id: "506139056270-iu34antv0ebbouo332p55gem8vj5uj9b.apps.googleusercontent.com",
      client_secret: "CNc0okSHqFBsmLSeZgzDhyHJ",
      scope: [
      "https://www.googleapis.com/auth/drive",
      "https://spreadsheets.google.com/feeds/",
      ],
      redirect_uri: user_forms_url)
    @auth_url = credentials.authorization_uri
  end

[...]
class UserFormsController
该方法返回的URI结构似乎与
redirec\u to
不兼容,因此您应该能够通过将其转换为字符串来修复它:

redirect_to @auth_url.to_s

该方法返回的URI结构似乎与
redirec\u to
不兼容,因此您应该能够通过将其转换为字符串来修复它:

redirect_to @auth_url.to_s

您确定此代码中触发的是错误,而不是您的视图吗?更仔细地检查背面痕迹。@tadman请原谅我的经验不足,但我不确定你的意思或期望我找到什么?你能详细说明一下吗?那个错误只是完整信息的一行。通常,Ruby会尝试引导您完成导致它的事件链。这在其他语言中称为回溯跟踪或“堆栈跟踪”。该列表中代码的最后一行是您开始查找问题的地方。我在这里的代码中没有看到任何对
delete
的调用,所以它可能是在其他地方发出的,比如在视图中。@tadman啊,我现在明白你的意思了。没有,我在错误窗口中检查了堆栈跟踪,没有发现任何内容。所有错误调用都是对rails默认文件的调用。视图看起来也很好-实际上与第一次搭建时一样,在控制器中删除
重定向到@auth\u url
会删除错误。是否
重定向到@auth\u url。要解决问题,是否确定在该代码中触发了错误,而不是在视图中?更仔细地检查背面痕迹。@tadman请原谅我的经验不足,但我不确定你的意思或期望我找到什么?你能详细说明一下吗?那个错误只是完整信息的一行。通常,Ruby会尝试引导您完成导致它的事件链。这在其他语言中称为回溯跟踪或“堆栈跟踪”。该列表中代码的最后一行是您开始查找问题的地方。我在这里的代码中没有看到任何对
delete
的调用,所以它可能是在其他地方发出的,比如在视图中。@tadman啊,我现在明白你的意思了。没有,我在错误窗口中检查了堆栈跟踪,没有发现任何内容。所有错误调用都是对rails默认文件的调用。视图看起来也不错-实际上与第一次搭建时相同,在控制器中删除
重定向到@auth\u url
会删除错误。是否
重定向到@auth\u url。是否解决问题?