読者です 読者をやめる 読者になる 読者になる

gaaamiiのブログ

悪気なく間違ったことを書いている時があります。コメントやTwitter、ブコメなどでご指摘ください

Ruby on Railsでブログを作成するときに役立った情報まとめ

検索から来た人へ: ここに書かれている情報は古いので、最新の書籍やドキュメントを読むことを強くおすすめします。

(最終更新日:2013/12/19)

Ruby on RailsでちょっとしたCMSを作ろうとしていて、単純なブログ程度の機能はとりあえず作れました。ここらで使ったものやら何やらをまとめておきます。少しずつ書いていきます。

下書きにしておくとだるくなって書かなくなるので最初から公開しておきますが、一段落ついたらTwitter(@gaaamii)で通知します。はてブ付けてくれるとモチベが上がって更新が早くなるかもしれません

書き終えました。

Ruby on Railsの導入

こちらでまとめました。2013/10/13時点での情報です。何かあれば修正しますのでお知らせください。

周辺ツール

Git,GitHub,Heroku(コード管理、デプロイ)

「ローカルで試しに作ってみる」という段階では絶対に必要なものではありませんが、いずれ必要になります。とりあえずは存在を知って、必要になった時にRailsTutorialの該当箇所を読むと良いと思います。

vimテキストエディタ

vimプラグインを管理するツール。まだあまり使いこなせてない。NeoBundleというツールの方が最近のものらしいというのを後から知りました。

vimでツリー表示するためのものです。これがないといちいちディレクトリをcdで移動しまくることになります。

f:id:shgam:20131219011131j:plain

Bundler(gem管理)

gemをBundlerで管理しているとbundle install の遅さにいらいらすることがあると思います。「みんなあの時間なにしてるんだろ」ということをTwitterでつぶやいたところ、id:yss44さんが上記の記事を紹介してくれました。

Bundlerを最新にして設定をちょこっといじると爆速になるよ、という内容です。

便利なgem

テキストエリアのためのgem

テキストエリアに入力されたものをそのまま出しちゃうのはもちろん(scriptタグとか埋め込まれたりして)セキュリティ的にやばいので、出力するときにはエスケープすることになります。

そのときに何かしら置換してあげないと見栄えが悪いです。かといってリッチエディタを用意するのは頭使いそうだし...

そんなお悩みを解決するのがマークダウンです。(qiitaのように)ユーザーとして想定する人が開発者なら、マークダウンさえ使えればオッケーなのではなのではないでしょうか。

タグ付けのためのgem

ブログなんかではたいてい必要になるのがこのタグ機能です。記事を書いて、それに[Ruby]とか[Rails]とか、タグを付ければ情報が整理できますよね。

ところが、これを自分で実装しようとしたら思いのほか難しい。そこで見つけたのがまさにタグ機能のためのgem、act-as-taggable-onです。以下のようなコマンドで簡単にマイグレーションファイルを作ってくれるって言うんだから便利なものです。

rails generate acts_as_taggable_on:migration

デザインのためのgem

おなじみTwitterBootstrapです。最近はCSSフレームワークにYahooの「Pure」を使うという話もちらほら聞きますが、とりあえずはBootstrapを味わい尽くしたいです。

セキュリティ

CSRFとは

Wikipediaでどんなものか把握。Railsではmetaタグにこんな形でtokenを発行することによってCSRF対策を施してる。

<meta content="xxxxxxxxxxxxxx" name="csrf-token">

Strong Parameters

Rails 4からの新機能。コントローラ側で受け取るハッシュを制限するためのものです。具体的にどう危険なの?というのはRailsTutorialのこの部分を見るとわかります。

この脆弱生を突くことはMass Assignmentと呼ばれていて、Rails3でも対策はあったものの管理者次第では穴を作ってしまうケースがあり、何度か問題になっていたようです。

教材・参考資料

インターネット

まずはドットインストールですよね。

じっくりしっかり勉強するのに最適。企業の研修でも使われているほどのクオリティ。「ローカルで何か作る」という意味での手っ取り早さではドットインストールの方が良いかも。

便利なgemの使い方とかが動画チュートリアルで学べる。無料エピソードだけでもそこそこ役立つものが見つかる。

書籍

良書だと言われている通り、良書だった。ただ、書かれている内容はRails3向けなので、MassAssignment対策にはattr_accessibleを使いましょうみたいになっててRails4との違いはところどころに見られる。

検索してよくお世話になったサイトやブログ

情報収集ツール

はてブはやっぱ便利です。Railsの情報を見つけたら[Rails]というタグをつけてひたすらぶっこむという使い方がおすすめです。

感想

情報がたっくさん見つかるので、やっぱRailsを使うことにして良かったなと感じてます。

参考書籍

検索からの訪問が多いので、参考書籍を追記しておきます(2014/12/26)

パーフェクト Ruby on Rails
すがわら まさのり 前島 真一 近藤 宇智朗 橋立 友宏
技術評論社
売り上げランキング: 99,852