Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么缓存查询时不缓存关系?_Php_Mysql_Sql_Caching_Laravel 4 - Fatal编程技术网

Php 为什么缓存查询时不缓存关系?

Php 为什么缓存查询时不缓存关系?,php,mysql,sql,caching,laravel-4,Php,Mysql,Sql,Caching,Laravel 4,整个查询我的数据库,查询如下 Model::with('first','second','third','fouth','fiveth') ->orderBy('title') ->remember(2,'domain.query') ->get() 整个查询会被缓存,等等,但是为什么我附加到查询的关系不会被缓存呢。我是否需要加入模型等来完成缓存等所有工作 发条系统中的查询: SELECT * FROM `first_table` WHERE `first_table`.`i

整个查询我的数据库,查询如下

Model::with('first','second','third','fouth','fiveth')
->orderBy('title')
->remember(2,'domain.query')
->get()
整个查询会被缓存,等等,但是为什么我附加到查询的关系不会被缓存呢。我是否需要加入模型等来完成缓存等所有工作

发条系统中的查询:

SELECT * FROM `first_table` WHERE `first_table`.`id` in ('2', '4', '3')
SELECT * FROM `second_table` WHERE `second_table`.`id` in ('2', '5', '1', '4')
SELECT * FROM `third_table` WHERE `third_table`.`id` in ('2', '5', '1', '4')
SELECT * FROM `fouth_table` WHERE `fouth_table`.`id` in ('2', '5', '1', '4')
SELECT * FROM `fiveth_table` WHERE `fiveth_table`.`id` in ('2', '5', '1', '4')

为什么是一个宽泛的问题,这是框架作者做出的设计决策。解决这个问题的方法是,尽管它不是很漂亮的代码,但使用急切的负载约束:

Model::with[ 'first'=>函数$q{$q->记住…;}, “秒”=>。。。 ]->记住…->获得;

谢谢您的回复。它看起来一点也不漂亮。我会调查的。