cake phpを勉強 ブログチュートリアルを実践5

前回は、データバリデーションを復習しました。
一通り、データを入力して、表示するところまでは出来た。

次は、データの削除。
少し間があいてしまったので、思い出しながらの作業です。

/app/controllers/posts_controller.phpの中に、
deleteメソッドを追加します。
function delete($id)
{
    $this->Post->del($id);
    $this->flash(' id: '.$id.' の投稿は削除されました。''/posts');
}

del($id)だけで削除ができる。
でもって、削除後に簡単なメッセージを出すのが、
flash(' id: '.$id.' の投稿は削除されました。', '/posts');
flash()メソッドは、データを削除した更新したりした際に簡単にメッセージを出すことができる関数。

次に/cake/posts/の一覧ページで削除ボタンが表示されるように、
VIEWの中の/app/views/posts/index.thtmlを編集。


ここで使っているHTMLヘルパーのlink()メソッドはとても便利なので、
覚えておく。
link(
    $title,//リンクさせた文字
      $url,//リンク先
      $htmlAttributes,//追加属性
      $confirmMessage = false,//確認メッセージ
      $escapeTitle = true,//タイトルのエスケープ
      $return = false);
)
クリックしたときにJavascirptでアラートを出したいときは、$confirmMessageに値をいれる。
これで削除までの流れができました。

▼下記が実際の画面の流れ
del1.jpg del2.jpg del3.jpg

しかし一気に集中して勉強しないと全然前に進まない気がする。
下記、メモ。
・削除するときは、モデル名->del($id);
・flash(表示する文字列,リダイレクト先,リダイレクトまでの時間);
・flash関数にはviewがいらない
・flash関数を実行時のメッセージを表示するページのレイアウトは
 libs/view/templates/layouts/flash.thtmlに設定されている。
・上記を変更するときは、app/view/layout/flash.thtmlにオリジナルのものを設置
・HTMLヘルパーのlink()にて、Javascriptでアラートを出す場合、
 $confirmMessageに表示するメッセージをいれる

tag:

date:2008年05月30日 00:55 | COMMENT (0) | TRACKBACK (0)

Trackback

Trackback UR: http://www.phas.jp/mt/mt-tb.cgi/212

Comment

(いままで、ここでコメントしたことがないときは、
コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。
承認されるまではコメントは表示されません。そのときはしばらく待ってください。)