【问题标题】:stack level too deep after upgrading rails升级导轨后堆栈级别太深
【发布时间】:2019-05-15 04:55:39
【问题描述】:

在升级代码之前,我已经将我的 rails 应用程序从 5.1.2 升级到 5.2.3,但升级后它给了我这个“堆栈级别太深”的错误,主要是它给出了我使用块用户或任何位置的错误与阻止用户有关的事情。 谁能帮帮我?

阻止用户方法-

def block_user
    return false unless current_user.present?

    @blocked_user = Blockuser.blocked_users.find_by_id(current_user.id)
    if @blocked_user.present?
      @blocked_users = @blocked_user.pluck(:blocked_by_user)
    else
      @blocked_users = ["false"]

    end
  end

这段代码有错误-

def blocked_user_admin(blocked_user_id)
    Blockuser.where(blocked_by_user: current_user.id , blocked_user: blocked_user_id)
  end

【问题讨论】:

    标签: ruby-on-rails ruby activerecord ruby-on-rails-5


    【解决方案1】:

    不推荐使用动态查找器方法find_by_id。只需将其更改为当前版本:

    @blocked_user = Blockuser.blocked_users.find_by(id: current_user.id)
    

    【讨论】:

      猜你喜欢
      • 2020-11-26
      • 2012-03-04
      • 2013-10-05
      • 2011-11-17
      • 2012-07-24
      • 2016-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多