0

私はWkHtmlToPdfコンポーネントを使おうとしていますが、PDFファイルの生成の問題に直面したときは素晴らしいツールのようです。

ただし、Authコンポーネントで動作させることができません。問題は、ログインページが常にpdfに生成されることです。私はログに記録されていますが、アクションはbeforeFilterで許可されていますが、それでもどういうわけか邪魔になります。

編集:

AppController:

var $components = array('Auth', 'Session');

function beforeFilter()
  {
  $this->Auth->logoutRedirect = array('controller' => 'users', 'action' => 'login');

  if (!$this->Auth->user())
    {
    $this->layout = 'login';
    }  
  }

コントローラ:

var $components = array('WkHtmlToPdf');

function beforeFilter() // I am logged in, so this shouldn't even be needed
  {
  $this->Auth->allow('pdf');
  }

function pdf()
  {
  $this->WkHtmlToPdf->createPdf();
  }

// this function is required for wkhtmltopdf to retrieve
// the viewdump once it's rendered
function getViewDump($fileName)
  {
  $this->WkHtmlToPdf->getViewDump($fileName);
  }

どんな助けでも大歓迎です、ポール

4

1 に答える 1

0

結局のところ、メソッドを許可する必要がありますgetViewDump。Authでは機能しないようですが、すべての人に許可しても脅威はなく、機能します。

コントローラ:

function beforeFilter()
    {
    parent::beforeFilter();
    $this->Auth->allow('getViewDump');
    }
于 2011-05-23T11:42:34.663 に答える