2014-03-24 2 views
2

"-> find (X)"또는 "-> where"로 테이블에서 행을 가져 오려고하는데 오류가 발생합니다. 나는 뭔가를 놓치고 있다고 생각하지만 나는 무엇을 말할 수 없다.Laravel 4 - 메서드 [where]가 존재하지 않습니다.

<?php 

class SnippetsController extends BaseController { 

    public $restful = true; 

    public function index($id) 
    { 
     $snippet = SnippetsController::where('id', '=', 11)->get(); 

나는 찾아 냈지만 눈에 띄는 것은 도움이되었습니다.

$snippet = SnippetsController::find(11); 

"-> get"및 without. 그러나 주목할만한 작품. 나는 테이블 자체에 "11"id를 가지고 있으며 오류는 그것을 가지고있는 것으로 보인다.

어쩌면 내가 Eloquent 수업을 연장해야합니까? 그렇다면 BaseController를 어떻게 위에 두어야합니까?

감사합니다.

오류 :

BadMethodCallException Method [find] does not exist.

+2

아마 모델에서 호출해야합니다 ... – kalley

답변

3

당신 오른쪽 발췌문라는 모델이 있어야합니다? 그래서 당신이 그것을 사용하는 방법입니다 :

$snippet = Snippet::find(11); 

귀하의 SnippetsController는 데이터베이스 (웅변 ORM)에 연결되지 않으므로 (이미이없는 경우) 당신은 모델 작성해야합니다

class Snippet extends Eloquent { 

} 
0

코드 $snippet = SnippetsController::where('id', '=', 11)->get();$snippet = Snippets::where('id', '=', 11)->get();으로 편집하십시오. 귀하의 모델 이름은 Snippets 일 수 있습니다 귀하의 문제를 해결할 수 있습니다.

관련 문제