Size: a a a

2020 June 09

AP

Andrey Postnikov in Drupal RU
Alexey Korepov
Я про это ограничение ничего и не говорил, но в итоге в Rest получается для одной сущности по 10 разных эндпоинтов под каждый случай, который нужен фронтендеру. А в графкуэль - просто один раз описал модели, и всё работает через один запрос.
Вот когда у тебя база не sql - можно такие вещи делать, но без тестов и мониторинга - это каждую неделю вы будете отстреливать себе то ноги, то голову
источник

AK

Alexey Korepov in Drupal RU
Ну вот взять те же банальные новости - к самой новости нужно ещё подгрузить media-сущности (например фотки и видосики), потом ещё автора, у автора - фио, аватарка, ссылка на его категорию (модератор, редактор), у категории автора - тоже название, аватарка. Всё это можно через REST получить, но придётся это всё на беке ручками собирать и выводить в ответ.
источник

АК

Алексей Кузнецов... in Drupal RU
да, придётся, но в этом нет абсолютно ничего сложного
источник

AK

Alexey Korepov in Drupal RU
А на соседней страничке - нужно, например, вывести услуги, и к ним приклеить 5 последних новостей, свзяанных с ней - ещё один рест-эндпоинт кодить
источник

AP

Andrey Postnikov in Drupal RU
Именно, один роут - получить новости и только там будет вся логика
источник

VV

Vadim Valuev in Drupal RU
что с UI белая страница под которой "Class "\Drupal\system\Controller\Http4xxController" does not exist." at /var/www/html/web/core/lib/Drupal/Core/DependencyInjection/ClassResolver.php line 24, что драш не может найти класс SQL
источник

AK

Alexey Korepov in Drupal RU
В графкуэль - всё это делается из коробки одним запросом, указываешь что нужно и в каком виде и получаешь. Если на беке этот запрос превращается в содомию на стороне sql, то всегда можно написать свой кастомный резолвер для запросов такого типа, который будет делать всё как надо
источник

АК

Алексей Кузнецов... in Drupal RU
ну у меня на одном проекте после 40 эндпоинтов я перестал считать)) Кажется, что это очень много, но на самом деле - это 40 небольших файлов с приммитивной логикой - писать и сопровождать такое вообще не составляет никакого труда
источник

AI

Andrei Ivnitskii in Drupal RU
Vadim Valuev
что с UI белая страница под которой "Class "\Drupal\system\Controller\Http4xxController" does not exist." at /var/www/html/web/core/lib/Drupal/Core/DependencyInjection/ClassResolver.php line 24, что драш не может найти класс SQL
Вроде было что-то такое. Попробуй запустить именно /update.php
источник

АК

Алексей Кузнецов... in Drupal RU
Alexey Korepov
В графкуэль - всё это делается из коробки одним запросом, указываешь что нужно и в каком виде и получаешь. Если на беке этот запрос превращается в содомию на стороне sql, то всегда можно написать свой кастомный резолвер для запросов такого типа, который будет делать всё как надо
вот с этими ресолверами ты и закопаешься по уши в непонятно что
источник

VV

Vadim Valuev in Drupal RU
как этот чёртов автолоадер работает, может кто знает? Посмотрел на сайт на 8.8, там все классы грузятся через ApcLoader, это вообще муть какая-то, должны же они туда как-то попасть
источник

AK

Alexey Korepov in Drupal RU
Алексей Кузнецов
ну у меня на одном проекте после 40 эндпоинтов я перестал считать)) Кажется, что это очень много, но на самом деле - это 40 небольших файлов с приммитивной логикой - писать и сопровождать такое вообще не составляет никакого труда
в графкуэль их и писать не нужно - просто поставил модуль graphql (только ни в коем случае не версии 4.х) и фронтендерам сразу всё доступно.
источник

AP

Andrey Postnikov in Drupal RU
Alexey Korepov
А на соседней страничке - нужно, например, вывести услуги, и к ним приклеить 5 последних новостей, свзяанных с ней - ещё один рест-эндпоинт кодить
Любое апи требует подумать) а вот если наговнякал сущностей и прибил гвоздями фронт к ним - это не апи и не рест
источник

AK

Alexey Korepov in Drupal RU
Алексей Кузнецов
вот с этими ресолверами ты и закопаешься по уши в непонятно что
копался уж не раз - гораздо проще и быстрее, чем на rest костылями всё прописывать, плодя эндпоинты и оповещая команду фронтендеров о каждом изменении
источник

VV

Vadim Valuev in Drupal RU
Andrei Ivnitskii
Вроде было что-то такое. Попробуй запустить именно /update.php
не, что в лоб, что по лбу, я ж говорю, драшем updb тоже не получается
источник

АК

Алексей Кузнецов... in Drupal RU
Alexey Korepov
в графкуэль их и писать не нужно - просто поставил модуль graphql (только ни в коем случае не версии 4.х) и фронтендерам сразу всё доступно.
Это только кажется, а потом как только выйдут потребности за рамки самых простейших случаев, начинается вдумчивое чтение и написание issues на орге, а также поиск и/или написание патчей, которые пренепременнейше слетят при первом обновлении
источник

AI

Andrei Ivnitskii in Drupal RU
Vadim Valuev
не, что в лоб, что по лбу, я ж говорю, драшем updb тоже не получается
Драшем и не получится. Попробуй /update.php
источник

VV

Vadim Valuev in Drupal RU
Либо ДИ, либо автолоадер несут какую-то дичь
источник

VV

Vadim Valuev in Drupal RU
ну я попробовал, не работает
источник

AK

Alexey Korepov in Drupal RU
Алексей Кузнецов
Это только кажется, а потом как только выйдут потребности за рамки самых простейших случаев, начинается вдумчивое чтение и написание issues на орге, а также поиск и/или написание патчей, которые пренепременнейше слетят при первом обновлении
ну я хз, у нас пока все счастливы с графкуэлями, просто вон ради интереса захотелось на 4.х ветку перейти, а там подстава такая
источник