2015-01-06 2 views
1

사용자 모델내가 이러한 경로로 레코드를 삭제 만 (오류없이) 빈 페이지를 표시 할 수 없습니다 사용자 정의 메소드 모델 laravel

public function take($id){ 
    return $this->find($id); 
} 

public function kill(){ 
    return $this->delete(); 
} 

경로 오류 1

Route::get('delete/{userid}', function($id) 
{ 

    $user = new User; 
    $user->take($id); //result the content of $id 
    $user->kill(); 
}); 

로 기록 오류를 삭제합니다.

경로 errror 2

Route::get('delete/{userid}', function($id) 
{ 
    User::take($id)->kill(); 
}); 

그리고 위의 경로와 내가 오류 비 정적 메소드 사용자 : (걸릴를 얻을)는 정적

를 호출 할 수 없습니다하지만 난이 경로로 삭제할 수 있습니다

Route::get('show/{userid}', function($id) 
{ 
    $user = new User; 
    $user->take($id)->kill(); 
}); 
  1. 따라서 체인 오류 ($)를 사용하고 kill()을 사용하지 않으려면 경로 오류 1을 수정하는 방법은 무엇입니까? 가능한 경우
  2. 경로 오류 2를 수정하는 방법 사용자 ::을 사용하고 이러한 오류가 발생하는 이유는 무엇입니까?

미리 감사드립니다.

답변

1

아래에보십시오 :

Route::get('show/{$id}', function($id) 
    { 
    $user = new User; 
    $user->find($id)->kill(); 
    }); 

내가 받아 들인 PARAM가 폐쇄에 전달되는 같은 일을 할 수 있다고 생각.

+0

find() 대신 find() 및 kill() 체인을 사용하지 않고 내 custom method take ($ id)를 사용하려고합니다. –

+0

@DarkCyber ​​그대로 작동해야합니다. –

+1

nevermind 원하는 레코드를 가져 오려면 take()를, ID를 찾으려면 find()를 사용하십시오. 감사합니다. –