Доступ к полям типов контента в шаблоне - PullRequest
0 голосов
/ 06 ноября 2019

Попытка извлечь все данные из типа контента (тип контента Article из базовой установки).

Я думаю, что мне удалось получить записи, но я не могу получить доступ к свойствам.

Это то, что у меня в контроллере

$query = \Drupal::entityQuery('node');
$query->condition('type', 'Article');
$items = $query->execute();

Когда я пытаюсь сбросить элементы, я получаю

array (2) {[3]=> string (1) "2" [4] => string (1) "3"}

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

Это пустой результат

{% for article in items %}
    <li>{{article.body}}</li>
{% endfor %}

Пробовал также с .title и .name.

На самом деле я думаю, что то, что я получаю здесь, это просто идентификаторы статей, но не свойства, поэтому я думаю, что я здесь снова что-то упускаю.

Спасибо за помощь

РЕДАКТИРОВАТЬ: также пыталсяэто, но это делает его сбой

$items_ids = $query->execute();
$items = Article::loadMultiple($items_ids);  

1 Ответ

0 голосов
/ 07 ноября 2019

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

Контроллер

$query = \Drupal::entityQuery('node');
$query->condition('type', 'Article');
$items_ids = $query->execute();
$items = Node::loadMultiple($items_ids);

Веточка

{% for article in items %}
    <li>{{article.title.value}}</li>
{% endfor %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...