Ruby on rails 如何确定是从UI还是从rails中的控制台进行更改?

Ruby on rails 如何确定是从UI还是从rails中的控制台进行更改?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个复杂的RubyonRails应用程序 因此,最终用户可以从Ui进行更改,而开发人员也可以从控制台进行更改 那么,有没有一种方法可以确定更改是从UI还是控制台进行的呢 当终端用户从UI进行更改时,我可以捕获他们的登录详细信息,但我如何才能知道谁从控制台进行了更改? 请提供帮助?当用户可以访问rails c时,他手中的应用程序通常不受限制。因此,我对此持悲观态度 您可以尝试实现/使用受限控制台,该控制台根据应用程序计算机上的登录实现当前用户方法。但对于您的场景来说,这可能有点牵强 更新:好吧

我有一个复杂的RubyonRails应用程序
因此,最终用户可以从Ui进行更改,而开发人员也可以从控制台进行更改
那么,有没有一种方法可以确定更改是从UI还是控制台进行的呢
当终端用户从UI进行更改时,我可以捕获他们的登录详细信息,但我如何才能知道谁从控制台进行了更改?

请提供帮助?

当用户可以访问rails c时,他手中的应用程序通常不受限制。因此,我对此持悲观态度

您可以尝试实现/使用受限控制台,该控制台根据应用程序计算机上的登录实现当前用户方法。但对于您的场景来说,这可能有点牵强

更新:好吧……这个“你自己滚”可能比我一开始想象的要简单。当然,您可以实现一个初始值设定项,例如current_console_user.rb

module Test3ElementBase
  class Application < Rails::Application
    config.current_console_user=ENV["USER"] if ENV["RAILS_CONSOLE"] == "Y"
  end
end
现在Test3ElementBase::Application.config.current_console_user仅在从控制台调用时定义。您现在“只”需要将这一事实混合到您原来的当前用户方法中


当然,可能有更简单的方法,我只是一个核心:-)

当用户可以访问rails c时,他手中的应用程序通常不受限制。因此,我对此持悲观态度

您可以尝试实现/使用受限控制台,该控制台根据应用程序计算机上的登录实现当前用户方法。但对于您的场景来说,这可能有点牵强

更新:好吧……这个“你自己滚”可能比我一开始想象的要简单。当然,您可以实现一个初始值设定项,例如current_console_user.rb

module Test3ElementBase
  class Application < Rails::Application
    config.current_console_user=ENV["USER"] if ENV["RAILS_CONSOLE"] == "Y"
  end
end
现在Test3ElementBase::Application.config.current_console_user仅在从控制台调用时定义。您现在“只”需要将这一事实混合到您原来的当前用户方法中


当然,可能有更简单的方法,我只是一个核心:-)

答案是否定的,控制台的更改无法跟踪。对控制台的访问意味着无锁地访问整个应用程序

答案是否定的,控制台的更改无法跟踪。对控制台的访问意味着无锁地访问整个应用程序

是的,我确实有当前用户方法,但是只有当用户从Ui输入他或她的凭据并登录到应用程序时,才会设置当前用户方法。如何从控制台执行类似操作。为了安全起见,我需要捕获人们从控制台所做更改的详细信息。这样一个用户受限的控制台是有意义的,但我不知道有这样的应用。我会调查一下。感谢您的帮助:)是的,我确实有当前的用户方法,但只有当用户从Ui输入其凭据并登录到应用程序时,才会设置当前的用户方法。如何从控制台执行类似操作。为了安全起见,我需要捕获人们从控制台所做更改的详细信息。这样一个用户受限的控制台是有意义的,但我不知道有这样的应用。我会调查一下。感谢您的帮助:)