感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

モデル/テンプレート/コントローラをまとめて作成するScaffoldingと、Rails 4でturbolinksオフ手順

<スポンサーリンク>

Scaffolding(スキャフォールディング)機能とは、手軽にCRUD機能を持ったアプリケーションを構築するための機能のこと。
Scaffoldingとは「足場」という意味で、アプリケーションの骨格を作成するための機能を指す。

railsコマンド

rails generate scaffold name field:type [・・・] [opts]

name:モデル名
field:フィールド名
opts:動作オプション

> rails new friends
> cd friends
> rails generate scaffold person name:string age:integer
> rake db:migrate

これで

ttp://localhost:3000/books

みたいにリクエストすれば画面が表示されるはず。
Rails3まではね。
Rails4から、Turbolinksなるものが邪魔して表示されないので、以下のリンクを参考にturbolinksをオフにした。
Rails 4 で turbolinks をオフにする方法

参考)
Rails 4のturbolinksについて最低でも知っておきたい事

加えて、application.html.erbをのjavascript_include_tagを以下のように変更。

<%= javascript_include_tag(:all, :cache => "cached_all") %>

javascript_include_tag

上記のサイトを参考に、turbolinksをオフにすることで、すんなりと以下のような画面を表示させることができた。

f:id:sho322:20140319000701j:plain

以下はその他のメモ。

■Unobtrusive JavaScript(控えめなJavaScript)
RailsではUnobtrusive JavaScriptというポリシーが一貫して遵守されている。
これはHTMLからJavaScriptが完全に分離されているという意味である。
HTMLのあちこちにJavaScriptがでしゃばってこないように設計されている。

■rel属性のnofollow値とは
rel属性のnofollow値はHTML5で追加された新キーワード。
リンク先が保証されない、ページランクに影響すべきでないことを検索エンジンに対して通知するという意味。

■部分テンプレート
部分テンプレートは、「_名前.html.erb」のように、名前の先頭に「_」が付与される。

■モデルに関連づいたフォームを定義するビューヘルパー
特定のモデルを編集するためのフォームである。
以下のように定義する。

form_for(model) do |f|
	フォームの本体
end

■既存のオブジェクトを更新するメソッド

update_attributes(attrs)

attrs:更新データ(「プロパティ名=>値」のハッシュ形式)

■フィクスチャ
テストデータをデータベースに流し込むための仕組みのこと

■読んだ本

Ruby on Rails 3 アプリケーションプログラミング

Ruby on Rails 3 アプリケーションプログラミング

列車本と並ぶRailsのバイブル的な本だと思うんだけど、いかんせんRails3。
Rails4の本がもうすぐ出るっぽい。
Ruby on Rails 4 アプリケーションプログラミング

Ruby on Rails 4 アプリケーションプログラミング