具有嵌套命名空间的 Rails 4 引擎

2024-01-07

我找不到一种方法来生成在 Rails 下具有嵌套命名空间的引擎。每次这样做时,我基本上都必须手动编辑和移动生成的文件。 Rails 中真的不支持嵌套命名空间吗?似乎不太可能。

在公司,我们对所有内容进行命名,如下所示: 公司名称::服务名称::模块

因此,当我致力于 Service1 并制作将集成到客户支持用于根据客户请求处理该服务的用户和数据的应用程序中的引擎时,我想在 公司名称::服务1::客户支持

然而rails似乎无法做到这一点。

  • Using rails plugin new a::b::blah不被接受:

    akovanm0:test avandra$ rails plugin new a::b::blah -T --dummy-path=spec/dummy --mountable --full --mountable

    Invalid plugin name a::b::blah. Please give a name which use only alphabetic or numeric or "_" characters.

  • 指定rails plugin new a/b/blah生成一个引擎,但具有相同的输出rails plugin new blah

  • 指定rails plugin new a_b_blah生成一个字面名称为 a_b_blah 的引擎,而不是命名空间。 (实际名称是驼峰式的 ABBlah)

我想要实现的是一个引擎,其控制器、模型和视图是在a::b::blah命名空间,并且可以以相同的方式安装。 我希望所有生成的控制器都进入app/controllers/a/b/blah, 下的模型app/models/a/b/blah, 等等...

有办法实现这一点吗?


对于 2022 年阅读本文的人来说,我相信 Rails 的更高版本会使用破折号作为单独的命名空间来处理引擎名称。

rails plugin new parent_engine-sub_engine --mountable

将创建以下内容engine.rb:

module ParentEngine
  module SubEngine
    class Engine < ::Rails::Engine
      isolate_namespace ParentEngine::SubEngine
    end
  end
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

具有嵌套命名空间的 Rails 4 引擎 的相关文章

随机推荐

  • 用于从等距柱状全景图创建预览图像的工具

    我正在寻找一个工具或库 可以让我生成等距柱状全景图像的预览图像 我正在使用 pannellum 库 https pannellum org https pannellum org 5D展示全景图 效果很好 然而 我想添加的是一种生成轻量级预
  • 自定义 IHttpHandler 尝试从虚拟目录读取时未授权 401

    我有一个自定义 IHttpHandler 在 web config 中指定如下
  • 如何在 CoffeeScript 中的特定范围内声明变量?

    我正在尝试在咖啡脚本中编写一个使用 beforeEach 块的茉莉花测试 这会遇到 Coffeescript 变量作用域的问题 这是我想写的 describe PhoneDetailCtrl gt beforeEach gt scope a
  • Zend_Form Jquery 和 fileUploadErrorIniSize

    编辑 我通过将 JS 更改为 zend form input not type file zend form textarea each function data this attr name this val Hello 正如我之前发布
  • Flutter 工具栏重叠在状态栏下方

    我想知道应用程序的顶部边缘在颤振中从哪里开始 看看下面的 hello world 应用程序 调试横幅已移至状态栏下方 这表明我的应用程序的顶部边缘从屏幕边缘开始 然而 该应用程序的AppBar已放置在状态栏之后 这种矛盾让我很困惑 应用程序
  • Google API 将 URL 重定向到我的本地主机

    我的应用程序使用 Google API 身份验证后 它将响应定向到重定向 URL 我可以将响应重定向到本地 URL 以便测试我的应用程序吗 None
  • Eclipse 类路径中的嵌套文件夹

    我正在尝试将两个文件夹添加到我的 eclipse 项目的类路径中 假设文件夹 A 和文件夹 B B 在 A 内 每当我将 A 添加到类路径中时
  • Nokogiri 不允许我在 Rails 中捆绑安装

    我已经看到有人提出这个问题 并尝试了我所看到的建议 我买了一台新 MacBook 希望设置一个现有的应用程序 当我克隆应用程序时 它不会捆绑安装 并且表现得像未安装 Rails 即使它在其他目录中工作 我尝试从 gemfile 中删除版本号
  • 使用表单身份验证的 MVC3 中的简单授权

    我正在尝试做 MVC3 中应该很简单的事情 我有一个使用表单身份验证通过第三方 SSO 对用户进行身份验证的应用程序 成功登录后 SSO 会发回我的应用程序上的特定控制器操作 然后我打电话FormsAuthentication SetAut
  • query.startAt 数据库规则权限被拒绝

    似乎是query startAt规则被破坏了 或者我不明白 有人可以确认吗 这是最小的可重现误差 实例 https querystartaterror firebaseapp com 使用 CTRL SHIFT i 打开 Chrome 控制
  • 使用 NewtonSoft 将 JSON 对象反序列化为 .Net 对象

    我有一个 json 对象 我想将其反序列化为其 Net 类型而不进行强制转换 我想我在文档中的某个地方读到 您可以将属性传递到 json 中 以告诉反序列化器它可以尝试转换的 Net 对象类型 我找不到我读这篇文章的地方 我想避免使用 va
  • 一些字符坚持我在 Python cmd 中的彩色提示

    我在用Python 2的cmd模块 https docs python org 2 library cmd html为程序创建命令行 只要我不为提示添加颜色 一切都会很好地工作 工作代码 from cmd import Cmd class
  • Woocommerce 德国化将条款和条件复选框移至提交前

    我正在尝试将 WC 结帐中的复选框从付款信息之前移动到提交按钮之前 我已使用以下命令在提交按钮之前成功添加了另一组复选框 add action woocommerce review order before submit woocommer
  • gmaps4rails:未捕获的引用错误:Gmaps 未定义

    我想通过 Gmaps Rails gem 将地图包含到我的 Rails 应用程序中 我使用带有资产管道的 Rails 3 2 11 按照此 gem 的设置说明进行操作https github com apneadiving https gi
  • 实体框架 - 无法创建 x 类型的常量值。此上下文中仅支持原始类型。

    我有以下内容 工程师模型 public class engineers public Guid Guid get set public string Name get set 我用正确的详细信息填写了工程师列表 List
  • 防止Button继承Parent的BackColor

    当我有一个父控件时BackColor以外SystemColors Control 但我在父控件上有按钮 我想在系统中绘制它们 但是 当我不改变BackColor按钮的颜色以父级的颜色绘制 当我改变BackColor按钮的SystemColo
  • 将 MySQL innodb 数据库加载到内存中

    我有一个 1 9GB 的 MySQL innodb 数据库 通过以下命令显示 SELECT table schema Data Base Name sum data length index length 1 048 576 as Data
  • 对 ignite 端口的 DoS 攻击

    我使用的ignite是嵌入式的 ignite使用两个端口 当我测试端口的dos攻击时 ignite出现java lang OutOfMemoryError Direct buffer memory 2021 12 01 14 12 59 0
  • malloc 错误 C++ [重复]

    这个问题在这里已经有答案了 可能的重复 malloc c 3074 错误 https stackoverflow com questions 1097995 malloc c3074 error 我在执行 C 代码时遇到这个奇怪的错误 ma
  • 具有嵌套命名空间的 Rails 4 引擎

    我找不到一种方法来生成在 Rails 下具有嵌套命名空间的引擎 每次这样做时 我基本上都必须手动编辑和移动生成的文件 Rails 中真的不支持嵌套命名空间吗 似乎不太可能 在公司 我们对所有内容进行命名 如下所示 公司名称 服务名称 模块