Я использую Datamapper v1.8.2 с Codeigniter v2.1.2 и имею правило "get", которое, похоже, не работает с полями с NULL
значениями. Вот модель:
class Page extends Datamapper {
public $validation = array(
'name' => array(
'rules' => array('required'),
'get_rules' => array('get_page_name')
)
);
function _get_page_name($field)
{
$this->$field = 'TESTING '.$this->id;
}
}
Пример кода:
$page = new Page();
foreach ($page->get() as $p) echo $p->name;
Когда поле таблицы name
имеет любое ненулевое значение, включая пустую строку, оно работает нормально, выводя что-то вроде TESTING 358
, но когда значение равно NULL
(которое является значением по умолчанию для этого поля), оно ничего не выводит. Нет никакой разницы при использовании get_iterated()
.
Я думаю, я мог бы обойти это, изменив значение по умолчанию, но мне интересно, делаю ли я что-то неправильно или что-то пропустил в документации, или, может быть, это ошибка? Кто-нибудь знает, в чем проблема?
Кроме того, если бы кто-нибудь мог указать мне на нужную тему на форумах CI для поддержки Datamapper 1.8.2, это было бы здорово, я пытаюсь найти ее и теряюсь в лабиринте ссылок на темы для старых версий DM.