2014-04-16 3 views
0

CakePHP 2.4 in과 TCPDF를 사용하여 송장을 생성합니다.CakePHP 쉘 Cronjob TCPDF

  • cronjob에 검사 새 송장이 생성 촬영할 경우 매일.

  • 브라우저를 통해 기능에 액세스하면 모든 것이 완벽하게 작동합니다.

CronjobShell.php : 내가 쉘을 통해 기능에 액세스 할 때

  • , 나는 오류 얻을

    $cmsoptions = $this->Cmsoption->find('first'); 
    $this->set(compact('data', 'cmsoptions')); 
    $this->layout = 'pdf'; 
    $this->render(); 
    

    "정의되지 않은 메서드 CronjobShell에 전화를 :: 설정 () "

    나는 Set 옵션이 ginvi라는 것을 알고 있습니다. 문제를 일으키십시오. 하지만 Cronjob으로 PDF를 생성하려면 어떻게해야합니까?

  • +1

    다음과 같이해볼 수 있습니다. http://stackoverflow.com/questions/18634102/cakephp-rendering-view-in-shell-is-not-working 뷰 클래스에 대한 참조가 필요합니다. – MadeOfSport

    답변

    2

    AppShell은 기본적으로보기 기능을 지원하지 않습니다.

    App::uses('View', 'Core'); 
    
    $view = new View(); 
    $view->set(compact('data', 'cmsoptions')); 
    $view->layout = 'pdf'; 
    $pdfContent = $view->render(); 
    

    을 그리고 당신은 file_put_contents('/var/www/new_invoice.pdf', $pdfContent); 또는 유사한의 도움으로 PDF 파일의 내용으로 $pdfContent을 사용할 수 있습니다 : 그래서 similar question처럼, 당신은 다음과 같은 추가해야합니다.

    +0

    작동합니다! 올바른 렌더링 파일을 가리 키기 만하면됩니다 :'$ view-> render ('Orders/add_orders'); – DvL