плюсую, агаКстати может создаст уже кто ветку для laravel, конечно возможно "знатоков" по ней нет, но всякие новости либо еще что-либо можно туда сливать, м?
Есть метод withAmdY
вместо join у них 2 запроса на "Lazy Eager Loading", мда.... :S
foreach (Book::with('author')->get() as $book)
{
echo $book->author->name;
}
не надо, вообще, ИМХО, разделить фреймворки не лучшая идея, лучше бы создали общую тему, а то все обсуждения всё равно пересекаются с другими фреймворками. Да и не вспомнишь все.Кстати может создаст уже кто ветку для laravel, конечно возможно "знатоков" по ней нет, но всякие новости либо еще что-либо можно туда сливать, м?
ты что хотел показать этим примером? он как раз иллюстрирует этот костыле-баг:Есть метод with
Thankfully, we can use eager loading to drastically reduce the number of queries. The relationships that should be eager loaded may be specified via the with
method:
foreach (Book::with('author')->get() as $book)
{
echo $book->author->name;
}
In the loop above, only two queries will be executed:
select * from books
select * from authors where id in (1, 2, 3, 4, 5, ...)
что тут не так как я сказал? :SWise use of eager loading can drastically increase the performance of your application.
Нa odesk тоже Yii более популярный, так что не согласен.Ragazzo
ага, лучший, как браузер opera. иностранные коллеги думали что yii это русский фреймворк из-за его анамальной популярности у нас. у них же zf, symfony, laravel, nette
а тут еще надо проверить что быстрее в MySQL! я не раз решал затыки в базе разрезая JOIN-ы на серию коротких запросовуже этого вполне хватит чтобы списать за такие "уники" fw на склад :SPHP:select * from books select * from authors where id in (1, 2, 3, 4, 5, ...)
С другой стороны в хайлоадах по идее все руками и перемножается, в базе ничего джойниться не должноуже этого вполне хватит чтобы списать за такие "уники" fw на склад :S
Все зависит от того, как мы делаем маппинг данных в базе на сущности (тот самый object-relational mapping в рамках одного класса). Одна сущность может быть представлена в базе несколькими таблицами - тогда нет никакого смысла не джойнить.С другой стороны в хайлоадах по идее все руками и перемножается, в базе ничего джойниться не должно
Ну это теория, практики у меня не было.
А когда за одну таблицу отвечает один сервис, за вторую другой? При этом сервис сам менеджит информацию, какой шард таблицы на каком сервере.Одна сущность может быть представлена в базе несколькими таблицами - тогда нет никакого смысла не джойнить.