Laravel Sentry将Edit权限限制为Creator

时间:2014-01-28 06:52:32

标签: laravel laravel-4 cartalyst-sentry

我正在使用Laravel构建一个简单的电影管理系统。

当用户在我的数据库中创建电影时,我使用以下

public function store()
{
    $input = Input::except('_token');
    $id = Helpers::loggedInUser()->id;
    $input['creator_id'] = $id;
    $this->title->create($input);
    return Redirect::back()->withSuccess( trans('main.created successfully') );
}

成功传递用户ID并在其中存储creator_id字段

我想限制用户编辑他们没有创建的电影。所以在编辑功能中我有

public function edit($title)
{
    $title = $this->title->byURi( e($title) );      
    $id = Helpers::loggedInUser()->id;
    $titleuser=$title['creator_id'];        
    if ( $titleuser = $id )
    {
        return View::make('Titles.Edit')->withTitle($title)->withType('movies');
    }

}

但是,这似乎不起作用。在我的哨兵用户数据库中拥有movie.edit权限的任何人仍然可以看到该视图。

1 个答案:

答案 0 :(得分:1)

如果比较两个变量,则必须使用两个等号,否则将第一个变量设置为第二个变量的值。

if ( $titleuser == $id )