The Ant
Юра
Мне кажется комментарии лучше грузить отдельными Аякс запросами
Виктор
Юра
Иначе вся страница будет тупить
Павел
Еще можно почудить с номерами)) что в принципе решение
Павел
Хранить в посте порядковый номер последнего коммента в рамках этого поста, а потом выгребать number > max -3
Юра
Может сразу в посте хранить джсон с последними тремя комментами? )
Павел
Наверное это даже оптимально с точки зрения read нагрузки
Павел
Павел
Или просто ids где то
Юра
Но вообще да в таким задачах денормализация часто бывает необходимой
Юра
Чтобы базу не насиловать каждый раз если страница сильно посещаемая
Ортонормированная
https://pastebin.com/ZgahUzPk ошибка
create table if not exists public."user"
(
id integer not null
primary key,
username varchar(255) not null,
email varchar(255) not null,
password varchar(255) not null
);
в базе вроде такая ddl, все ок
что не так?
Михаил
Ортонормированная
Михаил
Мы же про бд говорим
Виктор
Думаю, Михаил может быть прав. У меня была какая-то проблема с таблицей user в PostgreSQL. Может не точно такая, но тоже таблица создавалась, а потом начинались проблемы. Помогло добавление вот такого атрибута классу User:
#[ORM\Table(name: '`user`')]
Он говорит Doctrine о том, что нужно эскейпить имя таблицы.
Михаил
По правилам именования запрещается использовать множественные числа в названиях https://www.sqlstyle.guide/#avoid
Так что 2 варианта, или как Виктор сказал - добавить экранирования
или переимновать таблицу в customer или admin в зависимости кто является пользователем вашего сервиса
Вадим
Михаил
А щеё в доктрине есть префиксы, они описываются глобально и добавляются автоматически. Проблемы могут возникнуть если вы сырой sql пишете
Михаил
прям запрещается?
я в карцере сидел 15 суток за то что в институте название таблицы в множественную форму поставил
Вадим
понял
Вадим
помню в ларе была какая-то магия с множественными числами, а я уже назвал сущность staff. Пришлось созывать внутренний консилиум чтобы разрешить себе использовать staffs там где нужно было
Вадим
так что оно тоже не всегда везде однозначно
Михаил
Ну меня вот учили что в единственном числе. Ещё это прослеживается в именовании модулей.
Обычно пишут Controller, DataProvider. Поэтому просто запоминается что и название таблицы в единственно числе
Михаил
Тут скорее правило бритвы Оккамы. Если название таблицы, модуля, класса во множественном и в единственном числе не искажает смысл этой сущности, то лучше писать в единственном
Kirill
не, названия таблиц в множественном как раз
Kirill
потому что там много этих фиговин)
Павел
не, названия таблиц в множественном как раз
Спорно как одно так и другое (сам пишу в множественном).
Разный стиль есть, даже в разных доках по разному.
https://www.sqlstyle.guide/ru/#%D0%BF%D0%BB%D0%BE%D1%85%D0%BE%D0%B9-%D1%81%D1%82%D0%B8%D0%BB%D1%8C
https://www.w3schools.com/mysql/mysql_create_table.asp
Павел
Например та же симфа сейчас по дефолту в единственном числе делает
Kirill
Kirill
класс в единственном, а табилцы генерит во множественном)
Павел
Взять ПГ - там системные таблицы в единственном сисле, взять кликхаус - множественном
Вадим
Бардак кароч
Вадим
Jocker
7 5 7 6
Михаил
Лол, бот ввёл капчу но сделал это с пробелами)
Ортонормированная
Ортонормированная
Почему тут запрос проходит, а тут пишет что нет id?
UserEntity: https://pastebin.com/VE73FZVW
Ортонормированная
Nikolay
Потому что типы в gql надо проверить
Ортонормированная
Павел
Павел
Ну и да gql vs rest. Но это наверное апи платформа и поддерживает оба
Павел
Тут на одного юзера и надо передать id в аргументах
query{
user(
id: 1
){
username
}
}
Ортонормированная
Павел
Смотрите спеку настроек апи платформы.
Павел
Минимум запрос уже проходит мимо gql
Павел
Может юзера такого нет, а может еще что
Ортонормированная
юзер такой в базе есть
The Ant
Ля зачем вставлять в доку пример, который не работает?
Я про https://symfony.com/doc/current/service_container/tags.html#reference-tagged-services
Павел
Павел
Ты может опять с своими модулями запутался?
The Ant
Работает, я делал)))
Я про кусок с
$services->set(App\HandlerCollection::class)
// inject all services tagged with app.handler as first argument
->args([tagged_iterator('app.handler')])
;
Павел
Так что курите доку :)
The Ant
Там ошибка в хендлер коллекшн, что тип не указан, укажите явно
The Ant
А с атрибутом работает... Как обычно )
Павел
The Ant
С атрибутом делал?
Павел
Михаил
The Ant
У меня ямл ток на пакаджах
Михаил
Единственное тип вроде не iterable а Traverseble желательно, но так всё ок
Ортонормированная
Павел
Возможно там users. Курите доку и разные варианты
The Ant
Сорян за фотку, телегу ещё не ставил )
The Ant
Михаил
Или они динамические? Через листенер работают?