#18
コントローラーにreserves_controller.phpを追加
<?php class ReservesController extends AppController { var $name = 'Reserves'; var $uses = array('User','Seminar','Reserve'); function delete($uid,$sid){ print_r ($this->Reserve->delReserve($uid,$sid)); $this->flash(' uid: '.$uid.' sid: '.$sid.' の予約は削除されました。','/users/index/'); //DEBUG: アプリケーションを作る際のデバッグ設定を指定します。0以外の値であれば、Cake は pr( ) と debug //( ) 関数の呼び出し結果を出力し、 flash メッセージによるページ転送を自動的にストップします。数値を2または //それ以上の値に設定すると、ページの最後の部分に SQL ステートメントの結果が表示されます。 // $this->redirect('/users/index/'); } } ?>
モデルにreserve.phpを追加
モデル名と違うテーブルを利用する場合は、$useTableを使うらしい。
<?php class Reserve extends AppModel { var $name = 'Reserve'; var $useTable = 'seminars_users'; var $belongsTo = array('Seminar','User'); function delReserve($uid,$sid){ $ret = $this->query("delete FROM seminars_users WHERE user_id = $uid and seminar_id=$sid"); return $ret; } } ?>
index.thtml ビュー修正
<div id="my_page"> <h2><?php echo $me['User']['name']; ?></h2> <div id="contents"> <div id="menu" > <ul> <li><a href="/work/yoyaku/users/index">Home</a></li> <li><a href="/work/yoyaku/seminar/index">Seminar</a></li> <li><a href="/work/yoyaku/users/diary">Diary</a></li> <li><a href="/work/yoyaku/users/edit">Settings</a></li> <li><a href="/work/yoyaku/users/logout/">Logout</a></li> </ul> </div><!-- /menu --> <h3>予約しているセミナー</h3> <table> <tr> <th> name </th> <th> sstart </th> <th> send </th> <th> snumber </th> <th> cost </th> <th> action </th> </tr> <?php foreach ($me['Seminar'] as $seminar): ?> <tr> <td> <?php echo $seminar['name']; ?> </td> <td> <?php echo $seminar['sstart']; ?> </td> <td> <?php echo $seminar['send']; ?> </td> <td> <?php echo $seminar['snumber']; ?> </td> <td> <?php echo $seminar['cost']; ?> </td> <td> <?php echo $html->link( '削除', "/reserves/delete/{$me['User']['id']}/{$seminar['id']}", null, '本当に削除しますか' )?> </td> </tr> <?php endforeach; ?> <table> </div> <h3>My Profile</h3> <div id="my_profile" > <p><?= $me['User']['profile']; ?></p> </div> </div> </div>
一番上のyogaを削除
うまくいきましたー
※ちなみに、core.phpのDEBUGが0以外だとFlashしてくれないらしい!
この調子でどんどん行きましょう!