При определении правил должно ли имя поля совпадать с именем столбца в базе данных?
У меня проблема: если имя поля и имя столбца не совпадают, правила отображаются, и в базу данных ничего не сохраняется.
Что работает:
База данных
user_id | username
Поле
<?php echo Form::input('username', $username, array('id' => 'username')); ?><?php echo Arr::get($errors, 'username');?>
Модель
class Model_User extends ORM {
protected $_primary_key = 'user_id';
public function rules()
{
return array(
'username' => array(
array('not_empty'),
),
);
}
}
Сообщения
return array(
'username' => array(
'not_empty' => 'You must provide a username.',
),
);
Что не работает:
База данных
user_id | username
Поле
<?php echo Form::input('membername', $username, array('id' => 'username')); ?><?php echo Arr::get($errors, 'membername');?>
Модель
class Model_User extends ORM {
protected $_primary_key = 'user_id';
public function rules()
{
return array(
'membername' => array(
array('not_empty'),
),
);
}
}
Сообщения
return array(
'membername' => array(
'not_empty' => 'You must provide a username.',
),
);
Кажется, если я изменю имя поля на что-то другое, кроме имени пользователя, функция правил не будет работать правильно.
Если я не применяю никаких правил, изменение имени пользователя на другое не вызывает проблем с сохранением данных в базе данных.