Ruby Iconv 可与 irb 和 ruby​​ 调试器配合使用,但不能在单元测试中使用

2024-01-14

我在 Ubuntu 10.04 64 位上运行 Ruby 1.8.7 和 Rails 2.3.5。我写了一个方法,应该采用这样的字符串,"École À la Découverte"并输出这样的文件系统名称"ecole_a_la_decouverte":

(Iconv.new('US-ASCII//TRANSLIT', 'utf-8').iconv "École À la Découverte").downcase.split.join('_')

当我在代码中测试这一行时,测试总是失败"cole_la_dcouverte"不等于"ecole_a_la_decouverte"。奇怪的是,如果我插入调试器行并使用调试器控制台,测试就会通过。同样,手动运行此行irb and ./script/console似乎有效。

有谁知道发生了什么事以及为什么测试失败?我唯一的想法是包括调试器或irb以某种方式增加了对 UTF-8 的更多支持,但我不知道下一步该去哪里。

提前致谢!


这似乎是区域设置的问题 - 在 php 中也观察到同样的情况,如果没有设置区域设置(无论区域设置如何),iconv 函数(有时?)将不起作用。

See ruby-forum.com 上有一个关于此问题的主题 http://www.ruby-forum.com/topic/70827建议进行低级修复,允许您使用设置区域设置setlocale() in C.

另一个建议是安装语言环境宝石 http://www.yotabanana.com/hiki/ruby-locale.html.

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

Ruby Iconv 可与 irb 和 ruby​​ 调试器配合使用,但不能在单元测试中使用 的相关文章

  • 让 Rails 生产在端口 80 上运行

    我正在尝试让我的 Rails 应用程序在生产模式下运行 但遇到了一些困难 我正在使用 Passenger 和 apache 并运行 Ubuntu 12 04 我已经配置和创建了生产数据库 并设置了乘客 状态如下 rvmsudo passen
  • 仅针对 Rake 任务运行初始化程序

    我希望在执行 Rake 任务时运行某个初始化程序 但在运行 Rails 服务器时不运行 区分 Rake 调用和服务器调用的最佳方法是什么 Rake 允许您指定任务的依赖关系 最好的建议操作是将特定于 rake 的初始化放入其自己的任务中 而
  • Watir Webdriver 加载 Chrome 扩展

    我正在尝试使用 Watir 加载 chrome 扩展 但遇到了问题 我发现这个相关问题 能够启动带有 watir webdriver 加载扩展的 chrome https stackoverflow com questions 125867
  • Rails 中的嵌套布局

    Rails 3 2 中可以嵌套布局吗 我想创建 application html erb 使用的通用布局 并允许应用程序中的几个视图使用它 我找到了嵌套布局 https github com eric nested layoutsruby
  • 比较 ruby​​ 哈希值[重复]

    这个问题在这里已经有答案了 可能的重复 如何比较两个哈希值 https stackoverflow com questions 4928789 how do i compare two hashes 我有两个 ruby 哈希值 本质上是模型
  • 嵌套 has_one 关联的强参数

    我似乎遗漏了一些明显的东西 但我无法允许嵌套的属性has one协会 控制器 def create crossword Crossword new crossword params if crossword save render show
  • 如何配置database.yml以部署到Heroku

    我最近升级到了最新版本的Rails 并且不明白如何将应用程序部署到Heroku 这是我的database yml file default default adapter postgresql pool 5 timeout 5000 dev
  • 如何声明依赖于参数化任务的 Rake 任务?

    我见过一些任务具有参数和依赖项任务的示例 例如 task name first name last name gt pre name do t args args with defaults first name gt John last
  • 如何处理 Nokogiri 中的 404 未找到错误

    我正在使用 Nokogiri 来抓取网页 很少有 url 需要猜测 当它们不存在时 会返回 404 未找到错误 有没有办法捕获这个异常 http yoursite page 38475 gt page number 38475 doesn
  • 如何使用 ruby​​ 和命令行工具在 mavericks 中正确安装 cocoapod?

    这是我的设置 小牛队10 9 1 Xcode 5 0 2 哪个红宝石返回这个 Users quique123 rvm rubies ruby 1 9 3 p194 bin ruby 但 dvm install ruby 返回 Already
  • 从logstash中的文件名获取事件的时间戳

    我们有一个将事件写入文件的进程 没有时间戳 文件名本身带有时间戳后缀 该时间戳应用于文件中的所有事件 现在 我尝试使用logstash的输入文件插件来解析该文件 有没有一种方法可以将文件名获取到字段 以便我可以使用 gsub 过滤器提取时间
  • Travis-CI 上的 Rails 数据库设置

    我正在尝试在 Rails 项目上使用 Travis 持续集成 文档说 对于 SQLite3 测试数据库必须配置如下 test adapter sqlite3 database memory timeout 500 但我想保留本地测试的默认配
  • R在Windows平台Rstudio上打印data.frames中的UTF-8代码

    当数据框中存在UTF 8字符时 将无法正常显示 例如 以下内容是正确的 gt U6731 1 朱 但是当我将其放入数据框中并打印出来时 它是 gt data frame x U6731 x 1
  • 如何在Rails中使用jquery tokeninput?

    我正在尝试在我的应用程序的表单中添加 tokeninput jquery 字段 该字段允许用户发布状态更新 我希望用户能够将作品 单独的模型 附加到状态更新中 我正在使用 act as taggable on gem 并且我的查询指定标签上
  • 如何在 R 中的 dygraph 标题中使用 UTF-8 字符

    使用 Rstudio Windows8 当我使用 dygraph 函数绘制时间序列时 在尝试在主标题中使用 UTF 8 字符时遇到问题 library dygraphs dygraph AirPassengers main T tulo 这
  • RSpec 无法从 Factorygirl 中找到工厂

    我将在 Rails3 项目中将 RSpec 与 Factory Girl 一起使用 我已经安装了 Factory Girl 但它找不到工厂我有这个错误 Failure Error Factory build user should be v
  • Ruby:如何在不创建新实例的情况下检查实例方法的参数?

    在 Ruby 1 9 2 中 您可以使用 method symbol 检查任何方法的参数 如何在不创建新车的情况下检查 Car initialize 方法 class Car def initialize fuel type passeng
  • Rails 的多个数据库不适用于远程数据库

    我有一个远程只读 postgres 数据库 它是通过 docker 实例维护的卡尔达诺数据库同步 https github com input output hk cardano db sync 我设法将开发数据库连接到它 它工作正常 但由
  • 将对象转换为哈希,然后将其保存到用户的列

    找不到任何接近我想做的事情 我想将一个对象存储到用户的列中 该列采用数组的形式 postgres def change add column users interest string array true default end 我有另一
  • 文件位置 Rails 7 中的 Javascript 与样式表

    在使用导入映射功能的新默认 Rails 7 应用程序中 Javascript 存储在app javascript 而 CSS 位于app assets stylesheets 它们不仅位于不同的层次结构级别 而且javascript是奇异的

随机推荐

  • 在 Pandas 数据帧上循环时跳过行

    我正在努力解决以下问题 并且似乎在网上找不到任何解决方案 我对数据框有一个 for 循环 该循环应该执行以下操作 如果 reversal 列的内容 1 则用 1 填充 action 列 跳过 125 行 用 1 填充 action 的下一个
  • 如何卸载 Visual Studio 2012 Update 2?

    我安装了 VS2012 然后更新到 VS2012 Update 2 因此我的 Visual Studio 版本为 11 0 60315 01 Update 2 但现在我想恢复到 11 0 50727 1 RTMREL 如何卸载更新 Visu
  • 将系统属性传递给spark-submit并从类路径或自定义路径读取文件

    我最近发现一种使用 logback 代替 log4j 的方法 https stackoverflow com a 45480145 1549135在 Apache Spark 中 既适合本地使用 也适合spark submit 然而 还缺少
  • HttpServlet 类中的“service”方法是什么?

    下面是为了学习而编写的一个简单的servlet package com example tutorial import java io IOException import java io PrintWriter import javax
  • Elasticsearch 中的嵌套查询

    我在使用 elasticsearch 进行嵌套查询时遇到问题 如果我删除其中一个查询字符串 它就可以工作 我试图解决的问题是我有一个包含闭包列表的文档 闭包 我想在闭包列表中搜索一个值 其中另一个值满足某个条件 这只是从 argan 1 的
  • OMP 线程私有对象未被破坏

    底线 如何确保 threadprivate 实例被正确销毁 背景 接听时这个问题 https stackoverflow com questions 32347008 confused about firstprivate and thre
  • 使用函数为输入添加值

    我不知道我创建的函数出了什么问题 我试图创建一个漂亮的国家 地区选择器 但看起来这个选择器不会选择任何内容 只是开玩笑 所以我的问题是根据我的想法 我的函数应该更改分类为的输入字段的值country input单击多个系列的链接时 但看起来
  • 使 Eclipse RCP Intro 成为透视图的一部分

    对于我们正在创建的产品 我们希望能够在透视图中显示欢迎屏幕 我们称之为 从这里开始 简介是该透视图中唯一需要的内容 但是 当我尝试将简介视图添加到透视图中时 它表示该视图已存在于布局中 我尝试过以编程方式关闭介绍 弄乱待机模式等 但我无法让
  • 如果 Laravel 的 Blade 模板检查文件是否存在

    我有一个简单的问题 如何检查 Laravel 的 Blade 模板中是否存在文件 我试过 if file exists covers 1 jpg ok endif 但这不起作用 covers目录位于 public 我还需要提供一个变量 ga
  • 无法在 Web 配置中使用 applicationInitialization 预热页面

    我有一个简单的 Umbraco 7 7 2 应用程序 并将其托管在 Azure 应用程序服务 上 当我重新启动服务器时 第一次请求页面需要 20 40 秒 这真的很烦人 特别是当负载很高并且您处于横向扩展以减少响应时间 我已经在 webco
  • 检查输入的数字是否是 jquery 中的数字

    我有一个简单的textbox用户在其中输入号码 jQuery 有吗isDigit如果用户输入数字以外的内容 该功能将允许我显示警报框 该字段也可以有小数点 我建议使用正则表达式 var intRegex d var floatRegex d
  • Silverlight 的替代 IDE

    我想在不购买 Visual Studio 2008 许可证的情况下使用 silverlight 我已经使用了 Visual Studio 的试用时间 因此我正在尝试寻找另一个解决方案 外面有什么东西吗 Thanks RC0 及更高版本支持
  • Hadoop MapReduce 容器以非零退出代码 1 退出

    我正在尝试运行一些 hadoop 程序来提取 Ubuntu 中一些摘要的关键字 当我使用 Hadoop 运行程序时 出现以下错误 WARN util NativeCodeLoader Unable to load native hadoop
  • 从 javascript 将焦点设置到 Silverlight 控件

    我在使用 Silverlight 时遇到焦点问题 如何使用 JavaScript 将焦点设置到 Silverlight 控件 将以下内容添加到您的 Silverlight 托管页面 位于 onSilverlightError 函数上方 fu
  • 在 Java 中处理法语字符

    我有一个页面 我在其中搜索一个术语 并且它显示得很完美 无论它是什么字符类型 现在 当我在 JSP 中有几个复选框时 我会检查它并提交 在这些复选框中 我有一个框名称 例如ABC Farmac utica Corporation 当我单击提
  • 从字符串生成用于加密的整数,反之亦然

    我正在尝试用 python3 编写 RSA 代码 我需要将用户输入字符串 包含任何字符 而不仅仅是数字 转换为整数 然后对其进行加密 在 Python 3 6 中 在没有第 3 方模块的情况下将字符串转换为整数的最佳方法是什么 如何将字符串
  • jQuery 中同时具有 mousedown/mouseup 和 dblclick

    每当 mousedown 或 mouseup 处理程序附加到元素时 dblclick 就无法附加 如果附加则不起作用 尽管这看起来很公平 是否有任何方法可以恢复 dblclick 功能而不从头开始重写它 叹息 或者我错过了一些关于事件传播的
  • 异步操作完成,但结果未发送到浏览器

    我想实现一个网络聊天 后端是双 WCF 通道 双通道工作在控制台或winform中 它实际上可以在网络上运行 我至少可以发送和接收消息 作为我使用的基础这篇博文 http blogs claritycon com blog 2011 04
  • Chrome 标签页和进程

    我正在阅读关于 chrome 的谷歌书籍 其中他们谈到了为什么每次创建新选项卡时 他们决定启动一个进程来托管浏览器选项卡 所以 2 个标签 2 个镀铬工艺 3 个选项卡 3 个镀铬工艺等等 对吗 但我打开了大约 20 个左右的选项卡 但在任
  • Ruby Iconv 可与 irb 和 ruby​​ 调试器配合使用,但不能在单元测试中使用

    我在 Ubuntu 10 04 64 位上运行 Ruby 1 8 7 和 Rails 2 3 5 我写了一个方法 应该采用这样的字符串 cole la D couverte 并输出这样的文件系统名称 ecole a la decouvert