6月 04
12.確認画面(2)
ではビューについて、順番に整理していきます。
confirm.ctp から管理メニュー部分
<div class="actions"> ... </div>
で囲まれたところをざくっと削除します。いらないので。
Birthday(誕生日)のところ、
<?php echo $member['Member']['birthday']; ?>
こうなっているのを、以下に変更します。
<?php echo $member['Member']['birthday']['year'] .'/' . $member['Member']['birthday']['month'] .'/'. $member['Member']['birthday']['day']; ?>
同じく “hidden” の Birthday 部分、
echo $form->input('birthday', array('type'=>'hidden'));
これを以下に変更します。
echo $form->input('birthday.year', array('type'=>'hidden'));
echo $form->input('birthday.month', array('type'=>'hidden'));
echo $form->input('birthday.day', array('type'=>'hidden'));
Type(会員種別) のところ、
<?php echo $html->link($member['Type']['name'], array('controller'=> 'types', 'action'=>'view', $member['Type']['id'])); ?>
こうなっているのを、以下に変更します。
<?php echo $types[$member['Member']['type_id']]; ?>
次に「好きな物」に関して、
<div class="related"> ... </div>
ではさまれたの関連テーブル部分をごっそり削除し、その代わりにメインのテーブルの Img2 の表示部分(tr で囲まれた一画)の下に以下を追加します。
<tr>
<th><?php __('好きな物'); ?></th>
<td>
<?php if (!empty($member['Favorite'])):?>
<ul>
<?php foreach ($member['Favorite']['Favorite'] as $favorite): ?>
<li><?php echo $favorites[$favorite['id']];?></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</td>
</tr>
members_controller.php に戻って、 function add() の、一番下の
$favorites = $this->Member->Favorite->find('list');
$types = $this->Member->Type->find('list');
$this->set(compact('favorites', 'types'));
3行を、一番上に持ってきます。
こうなります。
function add() {
$favorites = $this->Member->Favorite->find('list');
$types = $this->Member->Type->find('list');
$this->set(compact('favorites', 'types'));
if (!empty($this->data)) {
ブラウザで確認します。
ここまでで、Type(会員種別)、Birthday(誕生日)、好きな物 が表示されるようになったはずです。
ボタン「送信」をクリックで、一覧画面に戻り、
The Member has been saved
と表示されればOKです。membersテーブルのデータは保存されています。
