Ruby on Rails
Heroku (ヘロク) とは,Ruby on RailsのWebアプリを簡単にデプロイできるPaaS。基本的に無料。 拡張機能を使う場合は,段階的に有料になる。 レンタルサーバやVPSを借りず,面倒な「環境構築」作業も一切なく,いま流行りの"クラウド"上で,非常に簡単にWeb…
Ruby on Railsの,バージョン間での違いのまとめ。一覧表を見て,Ruby on Railsの発展・遷移の歴史をたどる事ができる。また,各バージョンの仕様の変化(リリースノート)についてのリンク集も掲載。 一覧表(簡易年表) 現時点での最新版と,次期バージョ…
VPSホスティングサービスを使えば,Linuxの仮想マシンを1台丸ごとレンタルできる。 SSHやFTPで接続でき,自前でWebアプリを立ち上げたり,OSを自由に利用できる。仮想マシンなので,OSの起動・終了・バックアップもWeb上の管理パネルから可能。(※仮想マシ…
Webアプリを開発する際,下記のような要求が出たとする。 アプリそのものは,Linux上で動作させたい。 しかし,開発作業は,Windows上で行ないたい。(ExcelとかTortoise SVNなどGUIを駆使したい) このような場合,もし共有フォルダが無いと「Windows上で編…
Ruby on Railsのアプリを実用的に動作させるためには,Passenger(mod_rails)を使う。これはApacheのモジュールであり,Linux上でしか動かない。 したがって,もしRailsで真面目に開発・運用したい場合,Linux上に Apache+Passenger+Ruby on Rails の環境…
データベースへの接続を「強制的に切断」するには,どうしたらよいか。環境は,Linux上で,Ruby on RailsからPostgreSQLにつないでいる場合を想定。 考えうる方式は3通り。 ActiveRecord側から,DB接続を切断する PostgreSQL側から,DB接続を切断する OS側…
Ruby on Rails 1.2.6 でWebアプリケーションを開発する際,はまった事のまとめ。既に世の中では Rails 3.x以降のバージョンが出ているが, この情報はレガシーRailsアプリケーションの保守・メンテに役立つだろう。 (1) プラグイン関連 (1−1) acts_as…
以下のRubyのコードが,意図した動作をしないのはなぜですか。(制限時間1分)やりたい事: 1から3までの各数値の2乗を計算する。 プログラム終了時点での,変数の状態を表示する。 # 「p」で日本語を出力するための設定 $KCODE = "sjis" # 1から3までの範…
バリデーション系 サーバリ (サーバサイド・バリデーション) クラバリ (クライアントサイド・バリデーション) モデバリ (モデルクラスによるバリデーション) コンバリ (コントローラクラスによるバリデーション) デーバリ (DB上の制約によるバリデ…
Ruby on RailsでのWebアプリ開発では,何もかも「レール」が敷かれていて便利。しかし「そのレールはいらない」という時もある。レールが,かえって足かせになるのだ。 その一例が,単体テストのテストデータ(フィクスチャ)の面倒くささ。 Ruby on Railsの…
Ruby on Railsで,子モデルクラスに記述すべきメソッドの,分類済み一覧表。 「子モデル」とは, DBにアクセスするクラス。 そのクラスのインスタンスオブジェクトがアプリ全体で持ち回され,単一のレコードを扱う上で便利な働きをする。 これに対し,「親モ…
バッチ・マクロのTOPへ Webアプリ(Ruby on Rails)とデスクトップ(Excel VBA)の間で,XMLをやり取りするサンプルコード。 VBAでXMLを読み込み(そしてシート上に表示する), VBAでXMLを書き出し(シート上の情報をもとにファイルを吐きだす), Ruby on …
PostgreSQLで,システムテーブルを利用するための入門。 システムテーブルの使い方を覚えれば,自分が作ったテーブルの統計情報や,メタデータを取得する事ができる。DBそのものの理解も深まる。 (1)情報スキーマ(人間に理解しやすい。調べ物をするとき…
〜書き途中〜 Ruby on Railsのテストの書き方 (モデルの単体テストと,コントローラの機能テスト) http://language-and-engineering.hatenablog.jp/entry/20091023/p1 テストデータやテストケースを作る際,下記のような要望が生じる。 yaml形式のfixtures…
Ruby on Railsで開発を進めていく際,マイグレーション中には スキーマ情報 マスタデータ サンプルデータ などの構築情報を含めることができる。 たとえば 01_create_users.rb でまず users というテーブルを作成したら,すぐに 02_add_users.rb でサンプル…
Ruby on Rails (1.2.6)で gmail からメール送信を行なうためのサンプルコードと,拡張クラスを作れるようになるための詳しい解説。 (1)ごくかんたんにSSL/TLS認証を使う場合(シンプル) (2)(1)に加え, 1,日本語文字化け対応 2,件名や宛先もテンプ…
Ruby on Rails のテストの書き方のまとめ。 RSpecを使わない,素の unit test (モデルのテスト) functional test(コントローラ+ビューのテスト) について,どう書いたらいいのか,どこの情報を参照したらよいのか,などを列挙。Rails入門者が初めてテスト…
バッチのまとめTOPへ UTF-8 (BOM無し)のファイルがたくさんある。(例えばRuby on Railsのプロジェクトとか)これらのファイル内の文字列を,一斉に置換したい。 そのためのスクリプト。 サンプルコード 置換したい文字列を下記のようにテキスト内に保存。置…
アプリケーション開発で,表示文言やエラーメッセージを一元管理したい場合,GetTextを使うのがスタンダードだ。 Ruby on RailsでRuby-GetText-Packageを使う (Rails-2.1.x以前) http://www.yotabanana.com/hiki/ja/rub... しかしこの方法は汎用的である反面…