Typo3 8.7.10 Flexform itemsProcFunc, пользовательская функция контроллера, репозиторий имеет значение NULLPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Typo3 8.7.10 Flexform itemsProcFunc, пользовательская функция контроллера, репозиторий имеет значение NULL

Сообщение Anonymous »

В моих плагинах Typo3 я хочу предоставить администратору возможность выбирать некоторые элементы из раскрывающегося списка, содержимое которых хранится в базе данных «услуги», используя репозиторий «FacilitiesRepository.php».

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

Я использую гибкую форму, и " itemsProcFunc» для вызова моей пользовательской функции.
Пользовательская функция находится в контроллере под названием «FacilitiesController.php».

Контроллер использует inject для ссылки на репозиторий, например:

Код: Выделить всё

 /* @var \MyCompany\MyPlugin\Domain\Repository\FacilitiesRepository
* @inject
*/
protected $facilitiesRepository;
Все функции контроллера успешно подключаются к репозиторию, поэтому я знаю, что он работает.

Я пытаюсь использовать функцию репозитория findAll().

Моя пользовательская функция успешно вызывается из гибкой формы, однако всякий раз, когда она ссылается на объектовRepository, она выдает ошибку: вызов a функция-член findAll() для значения null.

Я пытался заменить findAll функцией test() в репозитории, но все равно получаю: Вызов функции-члена test() при нулевом значении.

Нуль всегда возвращается.

Я пытался внедрить репо другими методами (я считаю, что есть 3 способа), но результат тот же.

Вот моя пользовательская функция:

Код: Выделить всё

public function findAllForFlexForm($config){

$categories = $this->facilitiesRepository->findAll();  // $item){
$label = $item['id'];
$value = $item['titel_de'];

$optionList[] = array(0 => $label, 1 => $value);
}

// return config
$config['items'] = array_merge($config['items'], $optionList);
return $config;

}
Есть ли причина, по которой мой репозиторий объектов не распознается? Если бы я запустил эту функцию из FE, она вернулась бы правильно.

Подробнее здесь: https://stackoverflow.com/questions/528 ... itory-is-n
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как получить значение Flexform в моем репозитории?
    Anonymous » » в форуме Php
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Как получить значение Flexform в моем репозитории?
    Anonymous » » в форуме Php
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Как получить значение Flexform в моем репозитории?
    Anonymous » » в форуме Php
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • EF Core: Почему один конец моего однозначного отношения, допускающего значение NULL, всегда имеет значение NULL?
    Anonymous » » в форуме C#
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous
  • Any() Throw Exception, когда объект имеет значение NULL, как вместо этого вернуть значение NULL?
    Anonymous » » в форуме C#
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»