CakePHP, если данные не показывают сообщение - PullRequest
0 голосов
/ 18 июля 2011

На мой взгляд, для клиента, который показывает список назначений для этого клиента, следующее:

<h3>Appointments</h3>

<table>
    <?php foreach ($client['Appointment'] as $appointment): ?>
        <tr>
            <td>
                <?php echo $this->Html->link($appointment['date'],
                array('admin' => true, 'controller' => 'appointment', 'action' => 'view', $appointment['id'])); ?>
            </td>
            <td>
                <?php echo $appointment['type']; ?>
            </td>
        </tr>
    <?php endforeach; ?>
</table>

Я хочу обернуть таблицу в оператор if, который проверяет, существуют ли какие-либо встречи, а если нет, то показывает вместо этого следующее:

<p>Client has no appointments. <?php echo $this->Html->link('Book Appointment', array(
        'admin' => true,
        'controller' => 'appointments',
        'action' => 'add',
        '?' => array('id' => $client['Client']['id']))
    ); ?></p>

Как бы мне это сделать, пожалуйста?

Спасибо

1 Ответ

3 голосов
/ 18 июля 2011

Вы можете использовать оператор if и empty, чтобы определить, есть ли у клиента какие-либо встречи.

<h3>Appointments</h3>

<?php if ( ! empty($client['Appointment']) ): ?>
<table>
    <?php foreach ($client['Appointment'] as $appointment): ?>
        <tr>
            <td>
                <?php echo $this->Html->link($appointment['date'],
                array('admin' => true, 'controller' => 'appointment', 'action' => 'view', $appointment['id'])); ?>
            </td>
            <td>
                <?php echo $appointment['type']; ?>
            </td>
        </tr>
    <?php endforeach; ?>
</table>
<?php else: ?>
<p>Client has no appointments. <?php echo $this->Html->link('Book Appointment', array(
        'admin' => true,
        'controller' => 'appointments',
        'action' => 'add',
        '?' => array('id' => $client['Client']['id']))
    ); ?></p>
<?php endif; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...