Rails 引擎:获取父应用的名称
Rails engine: get parent app's name
我想知道可挂载的 Rails 引擎是否可以检索它所挂载的父应用程序的名称。
我查看了 official Rails engine guide,但找不到任何内容。有任何来源或想法吗?
我很惊讶一年多来没有人回答这个问题。您可以使用:
Rails.application.class.parent.name
根据您使用它的位置,您可能需要确保从根 rails 模块开始,这是一个更安全的选择:
::Rails.application.class.parent.name
截至 2021 年,Rails 6.x/Ruby 2.7,class
没有方法 #parent
。
我使用:
::Rails.application.class.module_parent
获取安装了我的引擎的应用程序的(技术)名称。
我想知道可挂载的 Rails 引擎是否可以检索它所挂载的父应用程序的名称。
我查看了 official Rails engine guide,但找不到任何内容。有任何来源或想法吗?
我很惊讶一年多来没有人回答这个问题。您可以使用:
Rails.application.class.parent.name
根据您使用它的位置,您可能需要确保从根 rails 模块开始,这是一个更安全的选择:
::Rails.application.class.parent.name
截至 2021 年,Rails 6.x/Ruby 2.7,class
没有方法 #parent
。
我使用:
::Rails.application.class.module_parent
获取安装了我的引擎的应用程序的(技术)名称。