WkHtmlToPdf组件,Auth的问题

时间:2011-03-03 17:47:52

标签: cakephp components wkhtmltopdf

我正在尝试使用WkHtmlToPdf Component,在面对生成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);
  }

任何帮助将不胜感激, 保罗

1 个答案:

答案 0 :(得分:0)

事实证明,您必须允许getViewDump方法。它似乎不适用于Auth,但是没有任何威胁允许它适用于每个人,并且它可以工作。

控制器:

function beforeFilter()
    {
    parent::beforeFilter();
    $this->Auth->allow('getViewDump');
    }