2016-07-30 80 views
0

在我的項目中有兩種類型的用戶,Admin和Normal User。他們在users表中由isAdmin字段標識。用戶可以通過以下在哪裏應用自定義中間件進行身份驗證Laravel 5.2

public function userEditprofile(){ 
    $user_detail = userDetail::find(Auth::user()->id); 
    $user_detail->address = Input::get('address'); 
    ....... 
    $user_detail->save() 
    return Redirect::route('showUserProfile'); 
} 

和路由功能編輯個人資料是

Route::group(['middleware' => 'my_profile'], function() { 
    Route::get('/editprofile', array('uses' => '[email protected]', 'as' => 'userEditprofile')); 
}); 

管理員還可以編輯任何用戶使用

public function adminEditUserprofile($user_id){ 
     $user_detail = userDetail::find($user_id); 
     $user_detail->address = Input::get('address'); 
     ....... 
     $user_detail->save() 
     return Redirect::route('showUserProfile', $user_id); 
    } 

在這兩種情況下,配置文件操作是相同的,但在第一種方法中不需要參數。但在管理員的情況下,需要一個參數。我可以通過任何其他方式優化代碼嗎?我是一個自學的程序員。我不太清楚高效的編程方法。任何人都可以回覆?

回答

0

我相信你應該實施基於角色的授權。一個很好的例子已經通過rappasoft/laravel-5-boilerplate

實現了,你應該更喜歡這個樣板,因爲它包含了很多對於大多數業務應用程序都是必需的。

相關問題