2
如何根據模型關係緩存惰性加載查詢。例如 -緩存Laravel 5.1中的懶惰加載查詢
$books = App\Book::all();
$books->load('author', 'publisher');
我可以用這樣的高速緩存第一個查詢
$books = Cache::remember('allbooks', 60, function() {
return App\Book::all();
});
如何緩存第二次查詢?
如果沒有直接的方法,請建議任何解決方法,可能帶有示例代碼。
更新:我需要單獨執行第二個查詢,因此我可以分別清除這兩個緩存鍵。
謝謝但我需要單獨加載關係(我應該在問題中明確指出)。我單獨需要它,所以我可以使一個緩存而不是兩個緩存無效。例如。 Post是LikedbyUsers。在每個新的LIKE上,我想使包含LikedbyUsers查詢的緩存無效,但保持Post查詢緩存完好無損。 – Aakash
好!查看更新回答 –
謝謝。這幾乎是正確的,但不是第二個函數中的$ booksAP賦值,而是將它分配給$ books,以使關係繼續工作。否則,我需要將$ booksAP傳遞給我的觀點。 – Aakash