2007-03-15
在 Rails 之外使用 ActiveRecord
今天要寫一個 cron script 要用到資料庫,因為已經被 Active Record 慣壞了,懶得用 SQL。所以就花點時間 Survey 怎麼再 Rails 之外使用 Active Record。
簡單版
1. require 相關的 lib
require "rubygems"
require_gem "activerecord"
2. 建立 DB Connection
ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:username => "root",
:host => "localhost",
:password => "secret",
:database => "plants_db"
)
3. 宣告 ActiveRecord Class
class MyClass < ActiveRecord::Base
end
如此就可以開始使用啦。不過如果遇到你必須一次操作多個 DB 的情況時,你可以用比較 Rails 一點的 Config 來寫作
加入 Config 的用法
1. require 相關的 lib
require "rubygems"
require_gem "activerecord"
2. 撰寫 DB 設定檔 ,我們仿 Rails 寫一個 database.yml
development:
__adapter: mysql
__host: localhost
__username: root
__password:
__database: lala
3. 將設定檔讀進來,讀到一個 $config 變數
$config = YAML.load_file(File.join(File.dirname(__FILE__), 'database.yml'))
4. 宣告 ActiveRecord 物件,記得加上 establish_connection
class MyClass < ActiveRecord::Base
establish_connection $config[''development]
end
5. 開始快快樂樂使用 ActiveRecord 吧
簡單版
1. require 相關的 lib
require "rubygems"
require_gem "activerecord"
2. 建立 DB Connection
ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:username => "root",
:host => "localhost",
:password => "secret",
:database => "plants_db"
)
3. 宣告 ActiveRecord Class
class MyClass < ActiveRecord::Base
end
如此就可以開始使用啦。不過如果遇到你必須一次操作多個 DB 的情況時,你可以用比較 Rails 一點的 Config 來寫作
加入 Config 的用法
1. require 相關的 lib
require "rubygems"
require_gem "activerecord"
2. 撰寫 DB 設定檔 ,我們仿 Rails 寫一個 database.yml
development:
__adapter: mysql
__host: localhost
__username: root
__password:
__database: lala
3. 將設定檔讀進來,讀到一個 $config 變數
$config = YAML.load_file(File.join(File.dirname(__FILE__), 'database.yml'))
4. 宣告 ActiveRecord 物件,記得加上 establish_connection
class MyClass < ActiveRecord::Base
establish_connection $config[''development]
end
5. 開始快快樂樂使用 ActiveRecord 吧
- 08:11
- 浏览 (434)
- 评论 (0)
- 分类: activerecord
- 相关推荐
发表评论
- 浏览: 85297 次

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
Net::HTTP 使用方式
https可以作吗?
-- by jerry -
用 JRuby 來連接 Oracle
能不能具体点? 这个Config文件在那啊?
-- by thinhair -
Another Ruby IDE:Interl ...
就是希望少占资源。
-- by dearsuper -
AK47 與 M16
奇怪你怎么能上网,而我那个朋友说是不能接触到电脑。。。
-- by blackanger -
AK47 與 M16
楼主用的AK是正版的吗???呵呵咋一看题目我还以为你在研究CS,我有个朋友也在台 ...
-- by blackanger






评论排行榜