为什么在 Ruby 需要 Date 之前就已经存在 Date 了?

2024-01-08

在 Ruby 中,我预计不需要的类会引发“未初始化常量”错误。情况就是这样CSV, 例如。

然而,Date行为很奇怪:它可用,但显然不起作用,直到需要它为止。

~: irb                                                                                             
>> Date.new(2012,7,24)
ArgumentError: wrong number of arguments(3 for 0)
>> require 'date'
=> true
>> Date.new(2012,7,24)
=> #<Date: 2012-07-24 ((2456133j,0s,0n),+0s,2299161j)>

如何解释这种行为?


我相信date不是来自irb,但是从rubygems, 具体来说the file https://github.com/ruby/ruby/blob/ruby_1_9_3/lib/rubygems/specification.rb#L13 where Gem::Specification被定义为:

class Date; end # for ruby_code if date.rb wasn't required

我相信他们需要any Date定义类,以便解释器不会在下面进一步抱怨Specification class.

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

为什么在 Ruby 需要 Date 之前就已经存在 Date 了? 的相关文章

  • 未捕获的类型错误:无法读取未定义的属性“split”

    使用 JavaScript 分割日期并重新排列格式 日期通过 json feed 以 YYYY MM DD 形式提供 为了获得日期 我这样做 var og date v report totalItems 1 inspection date
  • 预期的 ProductField,出现数组问题

    我有一个 Rails 4 应用程序 它有一个如下所示的 params 块 def store params params require store permit name description user id products attr
  • 在私有控制器方法中返回redirect_to

    前言 我正在使用设备进行身份验证 我试图阻止未经授权的用户查看 编辑或更新其他用户的信息 我最关心的是用户将 DOM 中的表单修改为另一个用户的 ID 填写表单 然后单击更新 我已经专门阅读过 像下面这样的东西应该有效 但事实并非如此 SO
  • 通过推送通知唤醒

    Suppose 有一些对象 例如 一个数组a 和依赖于对象的条件 例如 a empty 当前线程以外的某些线程可以操作该对象 a 因此条件评估值的真实性会随着时间的推移而变化 如何让当前线程在代码中的某个时刻休眠 并在条件满足时通过推送通知
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • 将人类日期(当地时间 GMT)转​​换为日期

    我正在服务器上工作 服务器正在向我发送 GMT 本地日期的日期 例如Fri Jun 22 09 29 29 NPT 2018在字符串格式上 我将其转换为日期 如下所示 SimpleDateFormat simpleDateFormat ne
  • 如何在 Rails 4 中使用 params.require

    我有一个像这样的私有方法 用于有四个字段的注册表单 firstname email password and confirm password 我不知道如何检查password confirmation def user params pa
  • yard 0.7.3 无法在 Markdown 和 Textile 中构建我的自述文件

    我决定将我的项目中的 README 文件转换为 Markdown 并一直使用yard 验证文档是否正确呈现 所以我安装了 rdiscount 将 README 更改为 README md 并尝试 yard doc README md 这给了
  • 使用 JavaScript 格式化日期

    JavaScript 中的日期格式有问题 这是我的函数代码 originalDate 2016 03 02 09 12 14 989522 var d new Date originalDate month d getMonth 1 day
  • 如何使用 Chrono 板条箱获取 Rust 中当前的工作日?

    我正在尝试使用 Chrono 板条箱获取 Rust 中当前的工作日 JavaScript 的等价物是这样的 new Date toLocaleDateString en US weekday long 我使用以下代码获取当前时间戳 let
  • Rails/Nginx 中的超时——最佳实践

    我正在开发一个应该在 Nginx 服务器上运行的 Rails 应用程序 根据输入 应用程序可能需要很长时间来处理请求 或者在出现错误时挂起 因此我想防止进程永远运行 除了确保客户端收到超时信号的 Nginx 配置之外 我想我可能仍然需要确保
  • 我在 Rails 中使用了保留字吗?

    这是我的模型 class Record lt ActiveRecord Base belongs to user belongs to directory end class Directory lt ActiveRecord Base h
  • Python日期字符串到日期对象

    如何在 python 中将字符串转换为日期对象 该字符串将是 24052010 对应格式 d m Y 我不需要 datetime datetime 对象 而是 datetime date 您可以使用strptime http docs py
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • 我可以将 MAMP (MySQL) 或 XAMPP (MySQL) 与 Ruby on Rails 3 一起使用吗?

    我可以将 MAMP MySQL 或 XAMPP MySQL 与 Ruby on Rails 3 一起使用吗 我从 MYSQL com 安装了 MySQL 但遇到了很多麻烦 所以我喜欢使用 MAMP XAMPP Mysql 有人这样做吗 另外
  • 如何存储没有年份部分的生日?

    类似问题 Postgres 生日选择 https stackoverflow com questions 6913719 postgres birthdays selection 我们正在设计一项新功能 我们将存储人们生日的月份和日期部分
  • 使用哈希参数进行 DRY Ruby 初始化

    我发现自己经常在构造函数中使用哈希参数 尤其是在为配置或最终用户将接触到的其他 API 编写 DSL 时 我最终做的是类似以下的事情 class Example PROPERTIES name age PROPERTIES each p a
  • 正则表达式的 o 修饰符是什么意思?

    Ruby 正则表达式有一些选项 例如i x m o i例如 意味着忽略大小写 什么是o选项是什么意思 在ri Regexp 它说o意味着执行 仅插值一次 但是当我这样做时 a one b a a two b不改变 它保持 one 我缺少什么
  • 使用 ruby​​ 调整动画 GIF 图像的大小?

    我正在尝试将 GIF 图像调整为不同的尺寸 我在 ruby 中使用 RMagick 库 但对于某些 gif 图像 即使我缩小 GIF 的大小 文件大小似乎也会增加 我正在以相同的纵横比调整图像图像的大小 这是我的代码 require rma
  • Ruby 中的 url_encode

    I read 的文档url encode http rdoc info stdlib erb 1 9 3 ERB Util 3Aurl encode 是否有一个表可以准确地告诉我哪个字符被编码为什么 使用url encode ERB s u

随机推荐

  • 列出 mysql 中同一个表的结果

    我如何列出此表中性别 男性且int 女性的iduser Table usermeta id iduser a b 12 204 age 19 7 203 age 35 6 200 age 24 3 201 age 34 5 201 gend
  • Delphi Soap https认证失败弹出对话框

    我们有一个使用 SOAP THTTPRIO 等 通信的 delphi XE 应用程序 默认情况下 该应用程序 在 delphi 中 通过 WinInet dll 工作 我们修复了身份验证代码 使其可以使用 https 身份验证 并且当 ht
  • 在表内搜索记录类型

    我有以下类型 CREATE OR REPLACE TYPE CLONE PRODUCT CHAR RECORD IS OBJECT CharacteristicID NUMBER NewValue VARCHAR2 200 Char New
  • 如何回滚分布式事务?

    我有三个不同的 Spring boot 项目 它们具有独立的数据库 例如 account rest payment rest gateway rest account rest 创建一个新帐户 payment rest 创建一个新的付款 g
  • 使用 gettext 对我有何帮助?

    我正在尝试建立一种方法来允许成员将字符串翻译成其他语言 您可以在此处查看示例 翻译测试 http acs graphicsmayhem com test3 index php 有人建议我为此使用 php 的本机 gettext 函数 而不是
  • 我如何知道我的字符串包含变音符号?

    例如 text eskoslovensk obchodn banka text string contains diacritics like etc 我想编写一个函数 在其中传递此字符串 eskoslovensk obchodn bank
  • 在 F# 中对平面序列进行惰性分组

    给定一个项目序列如下 a 1 a 2 a 3 b 1 c 2 c 3 我怎样才能将其懒惰地转换为 a 1 2 3 b 1 c 2 3 您可以假设输入数据源已按分组键元素排序 例如 a b 和 c 我在那里使用 来指示它是一个延迟评估的项目序
  • 添加到 pom 时类路径为空

    我正在使用这个简单的pom xml使用以下命令生成 OSGi 包maven bundle plugin
  • 如何使用索引获取linkedhashmap值?

    我是java新手 我制作了一个链接的哈希图 例如 Map
  • Typescript“专门”重载

    是否可以在不引入与实现完全匹配的签名的情况下定义这种专门的重载 on eventName string cb Function on eventName view cb args foo gt void on eventName strin
  • 如何使用 pefile 从 PE 文件中获取 .text 部分

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我怎样才能得到内容 textPE 中的部分 或任何其他部分 使用pefile module sectionsPE类实例的attr是节列表
  • 自由格式文本的通用地址解析器

    我们有一个显示地图数据的程序 想想谷歌地图 但为我们的客户提供更多的交互性和自定义图层 我们允许通过一组组合框进行导航 这些组合框预先填充了一堆数据的某些字段 即 国家 加拿大 填写了省份字段 选择安大略省 然后填写了县 地区列表 选择一个
  • 将 EDT 时区转换为 GMT 在 java 中无法正常工作

    我正在使用这段代码来解析这个日期 它必须将新日期显示为 2012 06 20 03 09 38 因为 EDT 是 4GMT 而我当前的位置是 GMT 5 但它没有显示它现在显示的是这样的 private static void conver
  • 打印枚举的字符串表示形式,NSLog

    我正在尝试 NSLog 我拥有的一些枚举 例如 这段代码打印枚举的整数表示形式 但我希望它输出实际的字符串名称 在本例中为 MON 我怎样才能做到这一点 import
  • 如何将 jQuery 对象转换为元素?

    如果我有一个textarea like var textarea textarea 如何使用 JavaScript 属性为其设置值value 而不是 jQuery 属性val 我想我需要转换textarea首先到 JavaScript 对象
  • 使用 Azure AppFabric 缓存服务的最佳实践?

    我已成功开始使用 Azure AppFabric 缓存服务 但我不确定创建 DataCacheFactory 对象的最佳实践方法是什么 现在我正在为每次调用缓存创建它 但显然这不是理想的方法 有些人建议使用 Singleton 但我不确定我
  • 将参数传递给 package.json 中的 npm 脚本 [重复]

    这个问题在这里已经有答案了 有没有办法在 package json 命令内部传递参数 我的脚本 scripts test node mytest js 1 2 node modules tap difflet bin tap difflet
  • 将工件从 sonatype Nexus 迁移到新的 sonatype Nexus

    我对 Maven 和工件迁移也完全陌生 我的环境有两个 Nexus 存储库 Nexus Repo A projrelases proxy type projsnapshots proxy type Nexus Repo B projrela
  • 将字符串数组传递给函数

    我正在尝试将字符串数组 C 样式字符串 传递给函数 但是 我不想为进入函数的每个字符串的长度设置最大大小 也不想动态分配数组 这是我首先编写的代码 include
  • 为什么在 Ruby 需要 Date 之前就已经存在 Date 了?

    在 Ruby 中 我预计不需要的类会引发 未初始化常量 错误 情况就是这样CSV 例如 然而 Date行为很奇怪 它可用 但显然不起作用 直到需要它为止 irb gt gt Date new 2012 7 24 ArgumentError