TwitterのようなものをRailsで作ってみよう

前回の記事 Ruby on Railsの紹介 -- RailsのインストールとHello World [Ruby] All About ではRuby on Railsをインストールして起動する方法を学びました。

次は、何回かに分けてRailsを使ったアプリケーションを作成する手順を解説してみようと思います。作成するアプリケーションは"Twitter"を真似たものです。

Twitter は(説明するまでも無いかもしれませんが)、簡単に言うとユーザが140文字の短いテキストを投稿して、それを読んだり読まれたりお気に入りしたり拡散して交流するWebサービスです。

Twitterを題材に選んだのは、もちろん使っている人が多いため完成イメージを共有しやすいという理由もありますが、コア部分はシンプルでありながら拡張できる機能が豊富で、出来上がりを逐一確認しながら進める段階的チュートリアルに向いているという考えによるものです。

新規アプリケーションの作成

まずは前回の記事と同じように、新規アプリケーションを作成します。Railsで作るTwitterなので安直に"Rwitter"とでもしましょうか。--skip-bundleをつけるとrails new時にBundlerで依存gemを自動的にインストールする機能をスキップさせることが出来ます。

作成されたRwitterディレクトリに入ったら、先ほどスキップしたbundle installを、インストールディレクトリを指定した上で実行します。

この時点で、rails serverコマンドで出来たてのアプリケーション画面を見ることが出来るのは前回解説した通りです。

ここまでは復習でした。次はRailsの機能のひとつ「Scaffold」を使い、MVCモデルの基本的な作り方を学習します。

Scaffoldとは

「Scaffold」という単語は「土台」とか「足場」という意味を持ちます。あるリソースのModel、View、Controller一式を自動的に生成してくれる機能で、その名の通り「足場」、完成形を作り上げるための叩き台として利用します。GoogleでScaffoldを画像検索するとよくわかりますが、ビルの工事でビル周辺に作られるあの骨組みをイメージするとよいでしょう。ビルを作るために組み立てられ、最終的には取り壊される"補助輪"です。

Railsでのアプリ作成に慣れてくると使わなくなりますが、最初はscaffoldを使ってみるのをオススメします。

次のページではScaffoldを使うコマンドを紹介し、生成されたテンプレートに解説を加えていきます。