질문이 있는데, CakePHP 구성 요소를 만드는 중에 문제가있을 수도 있습니다. 기본적으로, 나는 내 레이아웃 (사이드 바 통계 등)에서 사방에 액세스 할 수있는 몇 가지 쿼리를 구현해야합니다.CakePHP : 컴포넌트에서 쿼리 하시겠습니까?
구성 요소에서 쿼리하려고하면 개체가 아닌 함수를 호출 할 때 오류가 발생합니다.
젠장, 아무도 나에게 이것을 설명 할 수 있습니까?
건배!
질문이 있는데, CakePHP 구성 요소를 만드는 중에 문제가있을 수도 있습니다. 기본적으로, 나는 내 레이아웃 (사이드 바 통계 등)에서 사방에 액세스 할 수있는 몇 가지 쿼리를 구현해야합니다.CakePHP : 컴포넌트에서 쿼리 하시겠습니까?
구성 요소에서 쿼리하려고하면 개체가 아닌 함수를 호출 할 때 오류가 발생합니다.
젠장, 아무도 나에게 이것을 설명 할 수 있습니까?
건배!
이런 식으로하고 있습니까?
class MyComponent extends object {
function startup(&$controller) {
$this->controller = $controller; // Stores reference Controller in the component
}
function common() {
$data = ClassRegistry::init('MyModel')->myQuery(); // Call the query on the model
$this->controller->set(compact('data')); // Sets data from myQuery in view
}
}
+1이 솔루션은 모델을로드 할뿐만 아니라 인스턴스화하기 때문에 내 솔루션보다 낫습니다. 나는 내 자신의 대답을 줄 때 그것을 잊었다. –
성모님! 이것이 내가 원하는거야! 고마워요! – Johannes
박동의 소리가 날 위험이 있으므로,이 작업을 통해 엄청나게 MVC를 위반하게됩니다. 괜찮 으면 App::import()
을 사용하여 앱의 어느 곳에서나 모델을로드 할 수 있습니다 (http://book.cakephp.org/view/531/Importing-Controllers-Models-Components-Behaviors-).
MVC 구조를 유지하려는 시도에 관심이 있으시면 해당 일반적인 방식으로 실행해야하는 쿼리에 대한 추가 정보를 제공 할 수 있습니다.
정확히 오류 또는 오류가 발생한 코드를 사용할 수 있습니다.) –