2013-01-03 5 views
1

나는 PHP를 사용하여 자바 스크립트 파일을 생성하려고합니다. 파일이 포함되어 있고 모든 스크립트가 작업 중입니다. 알아낼 수 없다는 생각은이 파일에 매개 변수를 전달하는 방법입니다.CakePHP, 매개 변수를 js.php 파일로 전달 하시겠습니까?

$this->set('object_models', $object_models); 

이 요소에 뷰에서 합격을 내가 사용 :

echo $this->element('pageElement', array('object_model' => $object_model)); 

임 내 js.php 파일을 포함

내가 사용하는 뷰 컨트롤러에서 매개 변수를 전달하려면 다음보기에서 추가하십시오 :

echo $this->Html->script('modelDrawer.js.php?', false); 

답변

1

parseExtensions을 사용하고 논리를 직접 수행 할 수있는 컨트롤러에 대한 JS 파일보기?

이것은 rss 피드와 xml 파일이 Cake로 생성되는 것과 비슷하게 작동합니다. UPDATE

이동하여 routes.php 파일에

See this article

,이를 위해,라는 컨트롤러를 만들고, Router::parseExtensions('js');

그런 다음 줄을 추가 DynamicController.php - 붙여 넣기 여기에 있습니다 :

class DynamicController extends AppController { 

    public $uses = array(); 

    public function modelDrawer() { 
     // logic in here 
     $this->set('object_models', $object_models); 
    } 
} 

vi EW 폴더보기 파일 : 그 model_drawer.ctp 파일에서

/app/View/Dynamic/js/model_drawer.ctp

, 당신은 cakeified 싶은보기/스크립트 로직을 배치 할 수 있습니다.

그런 다음 스크립트는 다음과 같이 호출 할 수

<script type="text/javascript" src="/dynamic/modelDrawer.js"></script>

가 시도해주십시오!

+0

입력 해 주셔서 감사합니다! 임명 기사를 얻으려고 노력하고있는 Im는 시도한다. 그러나 나는 없다. .. 그것이 쓰여졌 기 때문에 갱신되었던 신조의 아마 작정이다.. 무엇이 바뀌 었는지에 관해주의와 함께 나를 도와 주겠다고 생각 하느냐? =) – Sultanen

+0

업데이트를 많이 해주셔서 감사합니다! 좀 더 명확하게 =) 나는 여전히 문제가있다. 나는 당신이 나에게 말한 것을했지만, /myProject/dynamic/modelDrawer.js를 접근하려고 할 때 _ "오류가 발생한다. :"심각한 함수 오류 : '100' 도달, 중단! ". model_drawer.ctp에서 테스트 해 보았습니다 : _ "window.onload = function() { alert ('testing'); }"_ – Sultanen

+0

은 재귀 적으로 해당 스크립트를 추가하려는 것 같습니다. –

관련 문제