主夫ときどきプログラマ

データベース、Webエンジニアリング、コミュニティ、etc

ruby プログラムから ActiveRecord を使う

ruby から activerecord をつかう。

  1 require "rubygems"
  2 require "active_record"
  3 require "logger"
  4 
  5 ActiveRecord::Base.logger = Logger.new("debug.log")
  6 ActiveRecord::Base.establish_connection(
  7   :adapter  => "mysql",
  8   :host     => "localhost",
  9   :username => "foo",
 10   :password => "bar",
 11   :database => "test",
 12   :socket   => "/var/lib/mysql/mysql.sock",
 13   :encording  => "utf8"
 15 )
 16
 17 class Article < ActiveRecord::Base
 18   belongs_to :user
 19 end
 20
 21 class User < ActiveRecord::Base
 22   has_many :articles
 23 end

これでrailsと同じようにActiveRecordを通常のrubyプログラムで利用できます。
5行目はロガーの設定。

# UserId:10 のユーザーの記事を取得する
User.find(10).articles.each { |article|
  puts article.titlte
  puts article.body
}

こんな感じで使えます.

Amazon API-Tools Install for fedora

Ec2のebsブートインスタンスにAPI-Toolsをインストールしたときのメモ
OsはFedora8

ツールのダウンロード

wget でファイルをダウンロードし、ダウンロードした ec2-api-tools.zip を解凍します。
解凍するとec2-api-tools-1.3-57419というフォルダが作成されます.

$ wget "http://www.amazon.com/gp/redirect.html/ref=aws_rc_ec2tools?location=http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip&token=A80325AA4DAB186C80828ED5138633E3F49160D9"
$ unzip ec2-api-tools.zip

このページからもダウンロードできます
http://developer.amazonwebservices.com/connect/entry.jspa?categoryID=88&externalID=351

ツールの実行にはJavaランタイムが必要なので事前にインストールしておきましょう。
id:masayuki14:20100208

インストール

解凍してできたティレクトリを移動します。今回は /usr/local/ec2 に配置します。
既にこのディレクトリにはamitoolsがあるのでついでに同じような名前にリネームしましょう。

$ mv ec2-api-tools-1.3-57419 /usr/local/ec2/apitools

環境変数の設定

つづいて環境変数の設定です.
/etc/profile.d/ec2.sh を作成し、以下の環境変数を設定します.

$ export EC2_HOME=/usr/local/ec2/apitools
$ export PATH=$PATH:$EC2_HOME/bin
$ export EC2_PRIVATE_KEY=/root/pk-*****************************.pem
$ export EC2_CERT=/root/cert-*****************************.pem

環境設定の設定後、次のコマンドを実行してバージョン情報が返ってきたらインストールの完了です。
上記の設定ではログイン時に環境変数が設定されるので、一度ログインしなおすといいかもしれません。

$ ec2ver
1.3-57419 2010-08-31

※事前にJavaのPathが通っていることが必要です.

おしまい

rails インストールメモ

FedoraRailsをインストールしたのでメモ。
ほとんど yum でできるので簡単です。

$ sudo yum install ruby          # ruby.i686 1.8.6
$ sudo yum install sqlite        # sqlite.i686	3.6.20
$ sudo yum install mysql-server  # mysql.i686 5.1.47
$                                # DBはsqliteの仕様がデフォルト
$ sudo yum install rubygems      # rubygems-1.3.7
$ sudo gem install rails
$
$ sudo gem install rail -v=2.3.4 # バージョン指定する場合

git の導入方法

1. gitのインストール

# Linux
yum コマンドでインストールします。

$ yum install git

# mac
わかりません。
yum 的なパッケージ管理ツールがあるとかないとかいううわさ

# windows
msysgit のページからダウンロードします.
http://code.google.com/p/msysgit/
右側のFeatured downloads: より最新版をダウンロードしてインストールします.

2. gitの初期設定

まずはgitにユーザー情報を登録します。
以下のコマンドを実行してユーザー名、メールアドレスを登録してください。

$ git config --global user.name "Thomas Edward Yorke"   # 名前を登録します
$ git config --global user.email "thomas@gituser.net"   # メールアドレスを登録します
$ git config --global color.ui auto                     # 色付きの表示設定

~/.gitconfig に上記の内容が保存されていればOKです。

$ cat ~/.gitconfig

3. SSHの準備

msysgitを起動するとLinux like なターミナルを利用できるので、
以下、Linuxと同じことができます。

gitサーバーにはSSH経由で接続するので、接続用の鍵ファイル(id_rsa)を用意します.
用意した鍵ファイルを各ユーザーの .ssh ディレクトリに移して
鍵ファイルのパーミッションを変更します.

 $ mv id_rsa ~/.ssh/
 $ chmod 600 ~/.ssh/id_rsa      # 400 でもいい

gitサーバーに接続できるように設定ファイルを作成します.
~/.ssh/config ファイルを用意します.

 $ touch ~/.ssh/config

vi などのエディタを使って以下の内容を記述しましょう。

Host hostname.com
User devuser
IdentityFile ~/.ssh/id_rsa     # 鍵ファイルを指定します.
Protocol 2,1
Port 22

これで準備完了です.任意の場所でssh接続が出きることを確認してください。

 $ ssh hostname.com

接続できればOK

4. プロジェクトのダウンロード

git を使う準備が整ったので任意の場所にプロジェクトをダウンロードしましょう。
プロジェクトを作成するディレクトリに移りgitサーバーからプロジェクトのクローンを作成します。

 $ mkdir -p project
 $ cd project
 $ git clone devuser@hostname.com:/var/git/hatena.git

git clone コマンドを実行すると project 以下に hatena というプロジェクトのディレクトリが作成されます。
git を扱うさいはこのディレクトリ以下がgitでのバージョン管理対照となります。

あとは add, commit, pull, push
のサイクルを開発でまわしていけばよいのでしょう。

おしまい。