Как Вы выполняете проверку Формы без модели в Cakephp?

nchar и символ в значительной степени действуют точно таким же образом друг в качестве друга, также, как и nvarchar и varchar. Единственная разница между ними - то, что nchar/nvarchar хранят символы Unicode (важный при требовании использования расширенных наборов символов), пока varchar не делает.

, поскольку символы Unicode требуют, больше устройства хранения данных, nchar/nvarchar поля занимают вдвое больше места (так, например, в более ранних версиях SQL Server, который максимальный размер nvarchar поля 4000).

Этим вопросом является дубликат этот .

17
задан Reactgular 18 December 2012 в 20:47
поделиться

2 ответа

Честно говоря, я бы создал модель только для проверки. Вы можете создать модель, которая не использует таблицу, добавив

var $useTable = false;

А затем создать массив проверки с правилами для каждого поля, которое вы хотите проверить:

var $validate = array('login' => 'alphaNumeric','email' => 'email','born' => 'date');

Затем в вашем контроллере сделайте что-то вроде:

$this->MyModel->set($this->data);
if($this->MyModel->validates()){
    // do stuff with valid data
}

Если вы действительно, действительно не можете использовать модель, тогда вам придется просто перебирать каждое значение в $ this-> data в действии вашего контроллера и проверять его на соответствие обычным выражение или используйте параметр Validation :: [rule] () , например:

if(Validation::email($someThingThatMightBeAnEmailAddress)){
    // do stuff with valid email address.
}
35
ответ дан 30 November 2019 в 11:08
поделиться

Думаю, мой первый вопрос будет таким: если у вас нет модели ... что вы проверяете? Обычно для заполнения модели выполняется сбор данных. Если вы используете альтернативный репозиторий данных (файл, веб-службы и т. Д.), Модель по-прежнему будет подходящим способом доступа к этим данным и управления ими.

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

-3
ответ дан 30 November 2019 в 11:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: