VPSでRuby開発をしよう
第3回 MySQLを使った簡単Webアプリ構築(準備編)
Ruby連載の第3回目にあたる今回は,
本連載では,
スケジューラを作ろう
Railsでのアプリ構築の例として,
では,
- Railsスケルトンの作成
- MySQLデータベースの定義
- Railsでのデータベース設定
- MySQLテーブルの作成
Railsスケルトンの作成
最初からコードを書いてアプリを作成することも可能ですが,
Railsスケルトンは,
今回は
$ rails -d mysql schedule
と実行します。-dオプションの引数で,
カレントディレクトリにscheduleディレクトリが作成され,
MySQLデータベースの定義
続いて,
新規ユーザは,
mysql> grant select,insert,delete,update,create,drop,file,alter,index on schedule_development to scuser identified by 'scuser';
コマンドラインでの操作は敷居が高く感じられるなら,
続いて,
mysql> CREATE DATABASE schedule_development CHARACTER SET utf8;
これも,
Railsでのデータベース設定
データベースを作成できたら,
database.
リスト1 config/
development:
adapter: mysql
encoding: utf8
reconnect: false
database: schedule_development
pool: 5
username: scuser
password: scuser
socket: /var/lib/mysql/mysql.sock
これで,
MySQLテーブルの作成
次は,
$ ruby script/generate model Schedule
db/
テーブルの構成は,
表1 schedulesテーブルの定義
フィールド名 | 型 | 説明 |
---|---|---|
id | 整数 | (自動生成) |
subject | 文字列 | 件名 |
sdate | 日時 | 開始日時 |
edate | 日時 | 終了日時 |
description | 文字列 | 概要 |
リスト2 マイグレーションファイルの変更箇所
class CreateSchedules < ActiveRecord::Migration
def self.up
create_table :schedules do |t|
t.string :subject, :limit => 32, :null => false;
t.datetime :sdate, :null => false;
t.datetime :edate, :null => false;
t.string :description
t.timestamps
end
end
def self.down
drop_table :schedules
end
end
以上で,
CentOSでのNoMemoryErrorに対処する
RubyやRailsなどのインストールを終えて無事動作していたのに,
その場合は/etc/prelink -u /usr/
を実行してください。
-b /usr/
bin/ ruby
次回予告
今回は準備だけで終わってしまったので,
バックナンバー
VPSでRuby開発をしよう
- 第5回 MySQLを使った簡単Webアプリ構築(完結編)
- 第4回 Railsでの開発は本当に簡単か?
- 第3回 MySQLを使った簡単Webアプリ構築(準備編)
- 第2回 最新Ruby & Ruby on Rails 環境構築
- 第1回 言語に見るVPS活用最新動向