使用“::”代替“module ...”作为 Ruby 命名空间

2023-11-21

在 Ruby 中,写法有区别吗class Foo::Bar and module Foo; class Bar用于命名空间?如果是这样,那又怎样?


如果你使用class Foo::Bar,但是Foo模块尚未定义,将会引发异常,而module Foo; class Bar方法将定义Foo如果尚未定义。

此外,使用块格式,您可以在以下位置定义多个类:

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

使用“::”代替“module ...”作为 Ruby 命名空间 的相关文章

  • Heroku 推送错误:rake 资源上的“NameError:未初始化常量 Uglifier::VERSION”:预编译

    我在尝试推送到生产环境时收到以下错误 这是推送的结果 git push production master Counting objects 124 done Delta compression using up to 4 threads
  • 无条件定义命名空间成员与自由函数

    我有时在嵌套命名空间中声明类 当涉及到定义它们的成员函数时 我不喜欢用这些嵌套命名空间名称来限定每个类 特别是如果它们很长的话 在定义成员函数之前添加 using namespace 或者 为了更精确的定位 using SomeClass
  • 需要帮助获取嵌套的 ruby​​ 哈希层次结构

    我有哈希深层嵌套哈希 我希望每个键的层次结构 父到子 作为数组 例如 hash properties gt one gt extra headers gt type gt object type1 gt object2 entity gt
  • Rails 4 ExecJS::Listings#index 中的程序错误

    将 JavaScript 添加到我的网络应用程序后 我现在收到以下错误 ExecJS ProgramError in Listings index stdin 16 5 error unexpected else else in Users
  • Riod-iOS 错误:您没有写入权限“Gem::FilePermissionError”

    我已经下载了一个Riot iOS https github com vector im riot ios并遵循构建说明 当我跑步时 捆绑安装 回溯 最近一次调用 2 来自 usr bin bundle 23 in
  • Rails 返回 JSON 序列化属性 with_in Different_access

    我以前有 serialize params JSON 但这会返回 JSON 并将哈希键符号转换为字符串 我想使用符号引用哈希 这在使用哈希时最常见 我向它提供符号 Rails 返回字符串 为了避免这种情况 我创建了自己的 getter se
  • 强制 DataMapper 断开与 postgresql 的连接

    我有一个测试 正在 postgresql 中创建和销毁多个数据库 为了能够删除数据库 我需要告诉 DataMapper 断开连接 我似乎找不到任何有关如何执行此操作的文档 DataMapper Adapters PostgresAdapte
  • 避免在 Ruby 中自动从 Fixnum 转换为 Bignum

    我正在将算法从 C 移植到 Ruby 该算法有一个方法返回一个int有时会溢出 private static int NextRandom int n return 1234567890 n 12345 该算法利用溢出来避免该函数返回的值超
  • close 似乎不适用于 WebSocket

    我有这个简单的 JavaScript 代码 window ws new WebSocket ws 127 0 0 1 8000 ws onopen function ws send hello Ruby 中的服务器如下所示 require
  • Ruby 的 OpenSSL::Random 种子是否足够?

    我对 Ruby 知之甚少 所以如果答案很明显 请原谅我 我注意到在http www ruby doc org stdlib 1 9 3 libdoc securerandom rdoc SecureRandom html http www
  • Ruby 代码到 JAR

    我希望能够将 ruby 程序编译为 java JAR 程序 我研究过 JRuby 看到了几个能够 eval ruby 代码的 Java 应用程序示例 但是是否有更优雅的解决方案允许简单地用 ruby 编写所有内容 然后将其直接编译为 JAR
  • 如何从 Ruby 检查具有特定 pid 的进程是否正在运行?

    如果有多种方法 请列出 我只知道一个 但我想知道是否有一种更干净的 Ruby 方式 之间的区别Process getpgid and Process kill方法似乎是当 pid 存在但由另一个用户拥有时发生的情况 Process getp
  • 如何使用 watir 滚动网页

    我正在尝试滚动网页以查找并单击页面滚动时延迟加载的内容 我正在使用以下命令 require watir webdriver browser Watir new firefox browser send keys space 我在 Firef
  • 无需别名的 Ruby YAML 编写

    我正在从 ruby 将数据写入 yaml 文件 并且经常在该文件上添加别名 像 id001 somekey somevalue id001 就我而言 我使用 yaml 文件来aid可读性并将名称添加到文件中的值 因为现有数据只是 没有键的分
  • 由于符号链接错误,无法在 Mac OSX 10.8.1 中安装 ruby​​-1.9.2

    首先 我尝试了常见的rvm安装 rvm安装1 9 2 但是 显示了以下错误 The provided compiler usr bin gcc is LLVM based it is not yet fully supported by r
  • 方法调用中是否有记忆约定?

    我想避免在方法调用中重新评估值 直到现在 我一直在这样做 def some method some method begin lot s of code end end 但它最终变得非常丑陋 在一些代码中 我看到类似以下内容 def som
  • ruby 的 String .hash 方法如何工作?

    我只是红宝石的新手 我见过一个字符串方法 String hash 例如 在irb 我试过了 gt gt mgpyone hash returns gt 144611910 这个方法是如何工作的 The hash方法是为所有对象定义的 看文档
  • 带有附加参数的redirect_to

    我是一个菜鸟 redirect to users url notice Succeed p p 然后我添加一个message它失败了 redirect to users url notice Succeed message test p p
  • Ruby 的字符串并置功能的官方文档在哪里?

    我最近意识到 如果你并置一系列 Ruby 字符串文字 例如 a b c 它相当于这些字符串文字的串联 但是 我在任何地方都找不到这种语言功能的记录 我使用术语 并置 和 串联 进行搜索 但只在几个 StackOverflow 响应中找到了对
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除

随机推荐

  • 如何通过引用正确传递 Integer 类?

    我希望有人能为我澄清这里发生的事情 我在整数类中进行了一些研究 但是因为整数是压倒性的 the 操作员我无法弄清楚出了什么问题 我的问题是这一行 Integer i 0 i i 1 I think that this is somehow
  • 有黑莓浏览器模拟器吗?

    我正在开发一个需要在黑莓浏览器中运行的移动网站 这不是一个应用程序 只是一个带有自定义样式表的网站 是否有可用的 Blackberry 浏览器模拟器 或者我是否需要使用其中一个模拟器来为您提供整个 BB 系统 是的 你必须使用模拟器由 RI
  • 如何在 presto 中将 varchar 转换为 MAP(VARCHAR,VARCHAR)

    我在 presto 中有一个表 名为 映射 的一列将键值对作为字符串 从 hello 中选择映射 例如 foo baar foo1 bar1 我想将 映射 列转换为 MAP 就像从 hello 中选择 CAST mappings as MA
  • C++ cout 给出未声明的标识符

    所以 我有这个问题 为什么 cout 会抛出异常 error C2065 cout undeclared identifier 我正在使用 Visual Studio 2012 作为 IDE 并且正在编写一个学校项目 除了示例文件之外 我已
  • 在没有 xorg 的 Linux 上运行 chrome headless

    是否可以在无头 Linux 机器上安装和运行 chrome headless 而无需安装音频和 xorg 依赖项 如果没有 那么是否有一个特殊的 chrome chromium 无头版本 它不会提取 xorg 和音频库 这个关于 puppe
  • Spring boot - MySQL 设置不起作用

    我正在尝试使用 Spring boot 和 MySQL 开发一个应用程序 正如文档所说 首先我使用 Intelij Idea 使用 Springinitializr 创建了项目 配置了application properties文件 并写道
  • 如何动态更改 Crypt 在 Laravel 中使用的密钥?

    我一直在研究如何使用Laravel 加密因为建立一个宅基地加密平台是不受欢迎的 也是理所当然的 Illuminate Support Facades Crypt encryptString This is a secret message
  • 从量角器激活时激活 chrome 语言标志(selenium)

    我正在使用 Protractor 为一个有角度的网站编写端到端测试 我们必须支持某些语言 所以我想使用以下命令来初始化 chrome lang标记并用其他语言启动它 我搜索了网络 但找不到任何有关如何完成此操作的示例 我唯一的线索是我看到并
  • Jitsi SIP Communicator 安装程序

    在完成更改后 我必须为 Jitsi SIP Communicator 创建安装程序 我在网上搜索并发现了一些步骤 如下所示 软件要求 西格温 包含库 make gcc 和 g http cygwin com setup exe 明GW 仅
  • 使用内联CSS - 在某些情况下是禁忌还是可以? [复制]

    这个问题在这里已经有答案了 可能的重复 内联样式与 CSS 中的样式 我想我正在寻找对此的一些意见 我完全赞成在单独的 css 文件中使用 css 样式作为类 但每隔一段时间 我就会遇到一种情况 我只需要为特定元素进行一些填充 或者仅在一种
  • 使用.NET捕获屏幕截图[重复]

    这个问题在这里已经有答案了 可能的重复 如何以位图形式捕获屏幕 我需要制作一个应用程序 每当按下特定按钮时都会捕获当前屏幕的快照 我搜索了很多 但只找到了如何捕获当前窗口 您能帮我弄清楚如何在 NET 中执行此操作吗 我们可以通过点击打印屏
  • mysql RAND() 限制

    您好 我有一个这样的查询 SELECT otel id FROM YAZILIM menu icerik WHERE YAZILIM menu icerik menu id 39 AND otel id IN SELECT otel id
  • 比较 Javascript 中的日期和时区

    当使用 gt 和 当您将其转换为 JavaScript 时 将按照您的预期考虑时间戳字符串表示形式的时区部分Date对象 内部值是一个简单的标量 标准化为UTC 所以比较时不需要特殊的时区处理Date对象 var d1 new Date D
  • Javascript 日期,这是我的错误还是我发现了错误?

    我的应用程序中有一个简单的 Javascript 部分 其中有一个链接 添加日期 它会在日期上添加 1 天 它总是工作得很好 除非日期是 11 07 2010 然后链接突然不再工作 它真的很奇怪 因为它只在特定日期 11 07 2010 挂
  • GCC 编译时抛出错误:错误:未知类型名称“FILE”

    我正在制作一个只写的函数 hello 到一个文件 我已将其放在另一个文件中 并将其标头包含在程序中 但 gcc 给出了一个错误 error unknown type name FILE 代码如下 app c include
  • 缩放 SKNode 不一致

    我已经创建了自己的解决方案 用于放大或缩小特定的 SKNode 而无需缩放整个场景 它似乎主要按照我期望的方式工作 有 2 个值得注意的例外 我希望在这里得到输入 首先是代码 该控制语句位于touchesMoved方法内 if touche
  • 使用jquery更改给定特定宽度范围的类名(媒体查询)

    我正在尝试修改以下 html div class col1 width8 img src images entity jpg div 我想使用媒体查询 但我不想修改css 而是将类名从width8替换为width6 对于下面的标准媒体查询来
  • iPhone 3GS 上后台线程消耗 100% CPU 导致潜在主线程

    在我的应用程序中 我在 NSOperationQueue 中执行 10 个异步 NSURLConnections 作为 NSInitationOperations 为了防止每个操作在连接有机会完成之前返回 我调用 CFRunLoopRun
  • 编辑表单中的 Django-Taggit

    这是一个模型类 class ModelName models Model pasta TaggableManager verbose name u Pasta 和一个表单模板 正常 P form as p 我想让一切都非常干净和有用 但结果
  • 使用“::”代替“module ...”作为 Ruby 命名空间

    在 Ruby 中 写法有区别吗class Foo Bar and module Foo class Bar用于命名空间 如果是这样 那又怎样 如果你使用class Foo Bar 但是Foo模块尚未定义 将会引发异常 而module Foo