代码之家  ›  专栏  ›  技术社区  ›  Luiz Carvalho

如何在隐身机器人框架中设置before\u action to route方法?

  •  2
  • Luiz Carvalho  · 技术社区  · 6 年前

    我试着用 before_action's Stealth 机器人,但不是工作。我不知道这样做是否正确。

    class BotController < Stealth::Controller
    
      helper :all
      before_action :print_this, only: :route
    
    
      def route
        if current_session.present?
          step_to session: current_session
        else
          step_to flow: 'hello', state: 'say_hello'
        end
      end
    
      def print_this
        puts "\n\n\n\n\n aaaaaaaaaaaaaaaaaaa \n\n\n\n"
      end
    
    end
    

    编辑:

    before_action 在其他控制器中工作,但不在 BotController

    编辑2: 这是一个具有以下行为的日志:

    1) 使用 before_action :print_this, only: :route

    sidekiq_1   | 2018-09-12T17:13:10.544Z 1 TID-gt9nk8dzx Stealth::Services::HandleMessageJob JID-1b773e7908fcb72b7aa10a3d INFO: start
    sidekiq_1   | [previous_session] User 160479129292600: setting to 
    sidekiq_1   | [session] User 160479129292600: setting session to hello->say_hello
    sidekiq_1   | [previous_session] User 160479129292600: setting to hello->say_hello
    sidekiq_1   | [session] User 160479129292600: setting session to main->show_menu    
    sidekiq_1   | 2018-09-12T17:13:11.738Z 1 TID-gt9nk8dzx Stealth::Services::HandleMessageJob JID-1b773e7908fcb72b7aa10a3d INFO: done: 1.194 sec
    

    使用 before_action :print_this, only: :say_hello ( say_hello HellosController < BotController

    sidekiq_1   | 2018-09-12T17:18:24.751Z 1 TID-gte80drk9 Stealth::Services::HandleMessageJob JID-62e6901208770b68439ac083 INFO: start
    sidekiq_1   | [previous_session] User 1604791292926176: setting to atendimento->say_meus_atendimentos
    sidekiq_1   | [session] User 1604791292926176: setting session to hello->say_hello
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   |  aaaaaaaaaaaaaaaaaaa 
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   | 
    sidekiq_1   | [previous_session] User 1604791292926176: setting to hello->say_hello
    sidekiq_1   | [session] User 1604791292926176: setting session to main->show_menu
    sidekiq_1   | 2018-09-12T17:18:25.524Z 1 TID-gte80drk9 Stealth::Services::HandleMessageJob JID-62e6901208770b68439ac083 INFO: done: 0.772 sec
    

    是这个,不是在工作 僵尸控制器

    1 回复  |  直到 6 年前
        1
  •  1
  •   Luiz Carvalho    6 年前

    好吧,我知道这不起作用的原因, route Stealth::Controller ,因此不会调用回调 before_action 或者另一个回拨。