- バックアップ一覧
- ソース を表示
- バックアップ を表示
- Ruby on Rails/ActiveRecordをライブラリとして利用する は削除されています。
- 1 (2007-10-17 (水) 16:25:24)
- 追加された行はこの色です。
- 削除された行はこの色です。
&pgid();
#contents
ActiveRecordをライブラリとして利用するにはまず、
require 'rubygems'
require 'active_record'
ActiveRecord::Base.establish_connection(
:adapter => 'mysql',
:host => 'localhost',
:username => 'DB接続アカウントのID',
:password => 'DB接続アカウントのPW',
:database => 'DB名',
:socket => '/var/lib/mysql/mysql.sock'
)
としてDBへの接続を確立します(この例ではMySQLへの接続を例にとっています)。
socketの指定がないと
No such file or directory - /tmp/mysql.sock (Errno::ENOENT)
のようなエラーが出る場合があるので環境のsocketのパスを指定します。
次に、ActiveRecordで扱いたいテーブルが
CREATE TABLE some_records (
id integer(11) NOT NULL auto_increment,
userid integer(11) NOT NULL,
contents text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
であるとすると、スクリプトには続いて
class SomeRecord < ActiveRecord::Base
end
というクラスを定義します。
(some_recordsというテーブル名なのでSomeRecordというクラス名になります)
後は、この定義したクラスを使ってテーブルを操作します。
# レコードをカウント
total_count = SomeRecord.count
# ユニークユーザIDによるカウント
user_count = SomeRecord.count(:distinct => true, :select => 'userid')