Size: a a a

2020 June 01

A

Alexey in Laravel Pro
а с ним - добавляется ещё один запрос. вместо двух-три получается
источник

ИФ

Иван Филатов... in Laravel Pro
если вам часто такое нужно, вместо такого метода я бы рассмотрел вариант отдельного релейшена lastComment и делал with('lastComment')
источник

ИФ

Иван Филатов... in Laravel Pro
а вообще по хорошему если вам важно количество запросов, то лучше сделать руками через join и потом либо гидрануть модели либо вывести из массива уже
источник

ИФ

Иван Филатов... in Laravel Pro
а если таким методом делать все же, то по идее у вас релейшен возвращает коллекцию, поэтому first здесь мне кажется неверно использовать, мое предположение - ->orderByDesc('updated_at')->limit(1) и обращаться через ->first() коллекции или через [0] массива
источник

A

Alexey in Laravel Pro
да я честно говоря тоже думал через DB напрямую дёрнуть
источник

A

Alexey in Laravel Pro
Иван Филатов
а если таким методом делать все же, то по идее у вас релейшен возвращает коллекцию, поэтому first здесь мне кажется неверно использовать, мое предположение - ->orderByDesc('updated_at')->limit(1) и обращаться через ->first() коллекции или через [0] массива
updated_at нет в таблице
источник

ИФ

Иван Филатов... in Laravel Pro
Alexey
updated_at нет в таблице
ну креатед_ат, не важно
источник

A

Alexey in Laravel Pro
тоже нет такого. таблица со старого проекта. по ID разве что
источник

ИФ

Иван Филатов... in Laravel Pro
так а как по вашему должен latest сработать?)
источник

A

Alexey in Laravel Pro
Иван Филатов
так а как по вашему должен latest сработать?)
я ему ID скармливал
источник

ИФ

Иван Филатов... in Laravel Pro
это оверхед на вызове лишней функции. просто сделайте orderByDesc('id')->limit(1)
источник

A

Alexey in Laravel Pro
источник

A

Alexey in Laravel Pro
вот сама связь
источник

ИФ

Иван Филатов... in Laravel Pro
а. ну тогда limit(1) по идее вам должно хватить
источник

ИФ

Иван Филатов... in Laravel Pro
но в целом это будет абсолютно то же самое, что вы сначала найдете Item, а потом сделаете $item->get_comments()->get()->first()
источник

ИФ

Иван Филатов... in Laravel Pro
т.к. запрос сделается одинаковый в одном и в другом случае
источник

d.

dev . in Laravel Pro
Иван Филатов
а. ну тогда limit(1) по идее вам должно хватить
это может быть выстрел в ногу если потом над коллекцией выполнить ленивую подгрузку
источник

d.

dev . in Laravel Pro
оно подгрузит вообще 1шт
источник

A

Alexey in Laravel Pro
dev .
оно подгрузит вообще 1шт
уже подгрузило
источник

ИФ

Иван Филатов... in Laravel Pro
dev .
это может быть выстрел в ногу если потом над коллекцией выполнить ленивую подгрузку
я считаю with с условиями это выстрел в ногу в любом случае)
источник