我一直有使用Ruby写一些脚本的习惯,activesupport作为Rails的一部分,为Ruby提供了很多方便的函数,大大简化了我开发。最近我闲来无事,升级了我的activesupport。结果,代码出错了。
我研究了一下报错,是因为函数不存在,难道是activesupport没有加载。google被墙了,baidu搜索一番,一点结果都没有,强烈鄙视之
,总算google能上了,终于在Rails网站的一个页面找到了原因和解决办法。
详细内容可以参看:http://guides.rubyonrails.org/active_support_core_extensions.html
原来当你用require "active_support" 加载activesupport时,默认它是不加载任何内容的。要加载实际的内容,要require其它的文件。activesupport类库支持只加载其中部分内容以减少运行时间。
由于我一般使用activesupport的Core Extensions,所以在脚本下面加入了如下代码即可:
require 'active_support/core_ext'
如果需要加载activesupport所有的内容,可以使用如下语句:
require 'active_support/all'
这样就把问题解决了。
最近准备有空使用Ruby 1.9把我以前的脚本都改写一下。把电脑里的软件和类库比如jdk、ruby等都升级最新版,好让自己感觉好像和这个世界没有这么脱节。
最后我对baidu的搜索能力实在是无语,多说无益,google时不时被墙真的是心中一个永远的痛。
分享到:
相关推荐
如果由于某种原因,您正在使用ActiveSupport::Cache而不是在 Rails 应用程序中,请继续阅读以了解如何单独安装/使用此 gem!安装# Gemfilegem 'redis-activesupport'用法如果您在 Rails 中使用 redis-store,请考虑...
1. `sqlite3.dll` 和 `sqlite.dll`:这两个文件是SQLite数据库的动态链接库,SQLite是一个轻量级的、文件式的数据库,常用于Rails开发中的本地开发环境,因为它易于设置和使用,无需单独的服务器进程。 2. `...
7. **测试框架**:Rails 2.3.3内置了测试支持,包括Test::Unit和RSpec(可能需要单独安装)。测试驱动开发(TDD)是Rails鼓励的开发方式。 8. **Scaffold**:快速生成基本的CRUD界面,用于快速原型开发或学习。 9....
`rails离线安装gem文件`指的是Rails框架的相关gem,Rails由多个gem组成,包括`rails`, `activesupport`, `activerecord`, `actionpack`, `actionview`, `activejob`, `actionmailer`等。这些gem负责提供路由、模型、...
注意:尽管本自述文件中的大多数示例都是特定于Rails的,但可以在没有Rails / ActiveSupport的情况下使用此gem。 问题 我们需要一种在一个地方处理不同通知通道(邮件,推送)的方法。 从业务逻辑的角度来看,我们...