=begin
drop database Contact;
create database Contact;
use Contact;
CREATE TABLE Employee (
id int unsigned not null auto_increment primary key,
Name VARCHAR(50),
Phone VARCHAR(15),
departmentId int
);
CREATE TABLE Department(
id int unsigned not null auto_increment primary key,
Name VARCHAR(50),
Phone VARCHAR(15)
);
=end
require "rubygems"
require "activerecord"
ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:host => "localhost",
:username => "root",
:database => "Contact")
class Employee < ActiveRecord::Base
set_table_name "employee"
belongs_to :department
end
class Department < ActiveRecord::Base
set_table_name "department"
has_many :children, :class_name => "Employee", :foreign_key => :departmentId
end
account = Employee.new
account.Name = "AAA"
account.save
department = Department.find_or_create_by_Name("B")
department.children << account
department.save
e = Employee.find 5 is equivalent to SELECT * FROM employee WHERE (id = 5)
es = Employee.find 1, 3, 5, 7, 9 is equivalent to SELECT * FROM employee WHERE (id IN ( 1, 3, 5, 7, 9 ))