Я хочу, чтобы мои логические значения давали более дружелюбный ответ, чем истина / ложь. Я видел, что я могу делать Boolan.Nice, но это даст мне да / нет.
Я использовал:
class AboutusGallery extends DataObject{
private static $db = [
'Description' => 'Varchar',
'ShowOnHomePage'=> 'Boolean',
];
private static $owns = [
'Picture'
];
private static $has_one = [
'Picture' => Image::class,
'HomePage' => HomePage::class,
];
private static $summary_fields = [
'Thumbnail' => 'Immagine',
'Description' => 'Descrizione',
/* THIS WORKS*/
'ShowOnHomePageITA' => 'In primo piano',
];
public function ShowOnHomePageITA(){
return $this->ShowOnHomePage ? 'Si' : 'No';
}
ShowOnHomePageITA работает и делает то, что я ищу. Но когда я делаю то же самое в моей модели администратора, он тормозит.
Вот что я делаю:
class PageLink extends DataObject {
private static $db = [
'SortOrder' => 'Int',
'Description' => 'Varchar',
'PageLink' => 'Varchar',
'ShowOnHeader'=> 'Boolean',
];
private static $has_one = [
'HomePage' => HomePage::class,
];
private static $summary_fields = [
'Description',
/* this does NOT work*/
'MostraNelHeaderITA' => 'Header',
];
public function MostraNelHeaderITA(){
return $this->ShowOnHeader ? 'Si' : 'No';
}
Я также безуспешно пытался выполнить кастинг или даже изменить Булеву на varchar.
Когда я пытаюсь разработать / создать или очистить проект, я получаю следующее:
(!) Неустранимая ошибка: вызов функции-члена scaffoldSearchField () включен
строка в
D: \ Programmazione \ WebSites \ Pediatra \ поставщика \ SilverStripe \ рамки \ SRC \ ORM \ DataObject.php
по линии 2227
Так что мне интересно, делаю ли я что-то неправильно или это нельзя сделать на модели администратора. Так как он работает везде, кроме администраторов моделей.