かんたんRuby on RailsでWebアプリケーション開発 04
2007年10月04日
4日目になって一気にコード量増えて理解度が大幅に低下。
この本、コード解説が丁寧だから選んだんですが、それでもなかなか理解が追いつかない。
とりあえず、メソッドの引数の内容と順番がよく分からない。
Railsで使うメソッドの解説とかリファレンス的なサイトってどこかに無いかなー。
4日目はデータベースとファイルアップロード機能を使ったフォトアルバムの作成。
量が多すぎてどこらへんメモればいいか悩む…。
以下メモ。
@page = Page.find(:all, :order => 'created_at DESC')
Page:モデルのクラス名
.find:対応するテーブルからレコードを読み出しても出るオブジェクトを返すメソッド
:all:条件に合う全てのオブジェクトの配列を返す
:order:ソート指定 DESC:降順、ASC:昇順
@page = Page.new(params[:page])
rhtml中のフォームデータのpageオブジェクトに関連したデータを取り出す。
例:
<%= text_field :page, :title %>:pageオブジェクトのtitleフィールド
<%= file_field :page, :file1 %>:pageオブジェクトのfile1フィールド
@page.save
.save:検証後にテーブルへ書き込む。
検証エラーなら偽、それ以外は真を返す。
データベースとのインターフェースに失敗すると例外発生。
@page = Page.find(params[:id])
.find(id):指定したIDのレコードに対応するオブジェクトを返す。
カンマ区切りで複数ID指定可能。
@page.update_attributes(params[:page])
.update_attributes:引数で指定したデータでレコードを更新。
引数は {フィールド名 => 値} のハッシュ型を与える。
検証を行うのは.saveと同様。
redirect_to :action => :list
redirect_to:指定したアクションにリダイレクト。
現時点のデータは失われる。
render :action => :new
render:指定したアクションを表示。
入力していた値は保持される。
@page.destroy
.destroy:テーブルからレコードを削除する。
<%= link_to 'New', :action => 'new' %>
link_to 表示内容, url:通常のリンクを生成。
2番目以降の引数には、:controller、:action、:idを必要に応じて指定する。
<%= render :partial => 'form' %>
render :partial => パーシャルrhtml名:パーシャルrhtmlを呼び出す。
ファイル名先頭のアンダーバーと拡張子は不要。
こんなもんかな。
そろそろよく分からなくなってきた。
old « かんたんRuby on RailsでWebアプリケーション開発 03 | メイン | はてブの欠点 » new