2015-08-17 24 views
0

草案我已经使用这个代码数据:显示,如果状态只出版,仅保存时的状态是laravel

public function newQuery($excludeDeleted = true) 
{ 
    $query = parent::newQuery($excludeDeleted); 

    return $query->where('status', 'Published'); 
} 

这段代码只显示在前端和后端的公布的数据。

我想表明草案只,但不是在前台管理部分的数据..

我一定第一个是该页面的管理或fronend第一?如果是的话,那该怎么办知道?

请回复..

回答

0

我解决了它:

public function newQuery($excludeDeleted = true) 
    { 
     $query = parent::newQuery($excludeDeleted); 
     if(Auth::check() && (!Auth::user()->hasRole('admin'))) 
       return $query->where('status', array('Published','Draft')); 

     else 
       return $query->where('status', 'Published'); 

    } 
1

您可以使用此代码

Route::currentRouteName() 

获取路线后,您需要设置像

if(Route::currentRouteName() == 'frontent'){ 
    return $query->where('status', array('Published','Draft')); 
}else{ 
    return $query->where('status', 'Published'); 
} 

的条件,我认为这个程序获取路线名称将工作。我不确定。请试试

+0

对不起,pabel, 它不工作在我的项目.... –

+0

@sabinmaharjan问题在哪里? –

+0

currentRouteName –