Как проверить выпадающий список с месяцами на CakePHP - PullRequest
2 голосов
/ 13 февраля 2011

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

<?php
echo $this->Form->create(false);
echo $this->Form->month('m1', null, array('monthNames' => false));
echo ' until ';
echo $this->Form->month('m2', null, array('monthNames' => false));
echo $this->Form->end('Choose');
?>

И затем создал простое правило для модели (для одного поля есть только правило для целей тестирования):

var $validate = array('m1' => array('rule' => 'notEmpty', 'required' => true, 'message' => 'Error!'));

Вот мой контроллер:

function choose_date ($id = null) {
    if (!empty($this->data)) {
        $this->Frequency->set($this->data);
        if ($this->Frequency->validates()) {
            $fD = $this->data['m1']['month'].'/'.date('Y');
            $tD = $this->data['m2']['month'].'/'.date('Y');
            $this->Session->write('Frequency.fromDate', $fD);
            $this->Session->write('Frequency.toDate', $tD);
            $this->redirect(array('action' => 'view'));
        }
    } else { $this->Session->write('Worker.id', $id); }
}

Так что получается, что он просто зависает в представлении "choose_date", не имеет значения, если вы делаете или не выбираете что-либо насписок.Как я могу это проверить?Возможно, это простая задача, но она сводит меня с ума!

1 Ответ

0 голосов
/ 13 февраля 2011

Решил это. Мне просто нужно было использовать правило «кратные» и указать значения, которые я хотел принять. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...