2014-07-05 74 views
0

我是laravel和php中的新成員。我正在用laravel 4開發一個雜誌網站。我想將主頁存儲在laravel緩存中。但在我的主頁中,有很多疑問。請參閱細節:如何在laravel緩存中存儲主頁4

我HomepageController指數方法如下:

public function index() 
{ 
    return View::make('homepage'); 
} 

這是在我的主頁用於後按類別我的查詢助手功能:

public static function cat_post($category, $limit) 
    { 
     $posts = Post::whereHas('categories', function($q) use ($category) 
      { 
       $q->where('category_slug', 'like', $category); 

      })->with('categories')->take($limit)->orderBy('created_at', 'DESC')->get(); 
     return $posts; 
    } 

在我homepage.blade。 PHP,我多次使用這個輔助函數。如下圖所示:

<?php $national = Helper::cat_post('national', 3); ?> 

@foreach ($national as $post) 
    {{ Helper::img_src($post) }} 
    <h4><a href="{{ Helper::post_link($post) }}">{{ $post->title }}</a></h4> 
</div> 
@endforeach 

現在我希望把網頁緩存和新的崗位創建時,再從緩存中刪除舊的主頁,並保存新的。

請幫幫我。可能嗎 ?????

回答

0

要存儲的值在緩存中,你可以使用Laravel's Cache

public function index() 
{ 
    return Cache::rememberForever('homepageCache', function() 
    { 
     return View::make('homepage'); 
    }); 
} 

這剪斷嘗試檢索的View::make('homepage')緩存版本否則創建它。

每一個被創建,更新或刪除您需要invalide您homepageCache時間:

Cache::forget('homepageCache');