2010-05-12 3 views
0

를 사용하는 방법,이있어 :컨트롤러에서 읽기()

$this->Site1->post_id=$id; 
$this->set('posts', $this->Site1->read()); 

을 내가 코드 행하여 교체 할 때 : ( $ this-> 설정 '게시물', $ this-> Site1-> 읽기 ('post_id', $ id));

그러나 반환 된 결과는 완전히 다릅니다.

그들 사이에 차이가 있습니까?

한 줄의 코드에이 두 줄의 코드를 다시 작성하여 만들 수 있습니까? 당신은 단지 post_id 열을 가져 오도록 read() 방법을 이야기하기 때문에

$this->Site1->post_id=$id; 
$this->set('posts', $this->Site1->read()); 

답변

2

결과는 완전히 다르다. 첫 번째 인수로 문자열을 read()에 전달하면 이러한 현상이 발생합니다. 첫 번째 인수로 열 배열을 전달하거나 모든 열을 반입하는 null을 전달할 수도 있습니다. 두 번째 인수는 검색하려는 레코드의 ID입니다. 예는 documentation을 참조하십시오.

한 줄의 코드에이 두 줄의 코드를 다시 써서 깔끔하게 만들 수 있습니까?

당신이 한 줄에 모두 적합 할 경우

는 시도 : $this->set('posts', $this->Site1->read(null, $id);

+0

감사를 사용할 수 있습니다. – user327712

1

또 다른 옵션으로, 당신은 또한 단순히 도움, 마이크 다시 findBy

$this->set('posts', $this->Site1->findByPostId($id)); 
관련 문제