在很多时候,我们不需要新建一个 rails 项目生成控制器之类的文件,需要直接单独调用 active_record 对数据库进行操作 (如:设置过期会员的状态、删除长期无用的数据、做定时推送等),执行效率也会高很多。 具体操作如下 (这个是针对 mysql 的,当然只需要根据自己的需求修改数据库链接就好)。
require 'rubygems'
require 'active_record'
# 单独使用active_record对数据库进行查询
ActiveRecord::Base.establish_connection(:adapter=>'mysql2',
:encoding=> 'utf8',
:reconnt=> false,
:timeout=> 5000,
:username=>'用户名',
:password=>'数据库密码',
:host=>'数据库地址',
:port=>'3306',
:pool=>'5',
:database=>'数据库名')
# 对应数据库表的model映射
class Music < ActiveRecord::Base
end
# 完成以上内容的配置后,就和rails中的写法一样了
p Music.find_by_src("1").nil?
exit
如何做定时任务就简单多了,针对不同的操作系统应该有相应的方法。只需要把这个*.rb 做一个.sh 文件调用就好 (如使用 ubuntu 的 crontab 创建定时执行 sh 文件调用写好的 ruby 处理文件)。