質問編集履歴
1
コードの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,4 +7,40 @@
|
|
7
7
|
この度、PDFの書き出しをバッチ処理する必要が生じ、Console/Commandで試行錯誤しています。
|
8
8
|
|
9
9
|
結果、PDFの生成には成功したのですが、bootstrap3等のJavaScriptがまったく機能しません。
|
10
|
-
なんとかConsole/CommandでJavaScriptを効かす方法はないでしょうか。
|
10
|
+
なんとかConsole/CommandでJavaScriptを効かす方法はないでしょうか。
|
11
|
+
|
12
|
+
追記:コードを追加しました。
|
13
|
+
|
14
|
+
**app/Console/Command/MkpdfShell.php**
|
15
|
+
```lang-php
|
16
|
+
App::uses('CakePdf', 'CakePdf.Pdf');
|
17
|
+
App::uses('HtmlHelper', 'View/Helper');
|
18
|
+
App::uses('BoostCakeHtmlHelper', 'View/Helper');
|
19
|
+
App::uses('Router', 'Core');
|
20
|
+
|
21
|
+
class MkpdfShell extends AppShell {
|
22
|
+
public function startup(){
|
23
|
+
parent::startup();
|
24
|
+
}
|
25
|
+
public function main() {
|
26
|
+
$CakePdf = new CakePdf(Configure::read('CakePdf'));
|
27
|
+
$this->Html = new BoostCakeHtmlHelper(new View());
|
28
|
+
$this->Html->className = 'BoostCake.BoostCakeHtml';
|
29
|
+
$this->User->recursive = 1;
|
30
|
+
$CakePdf->viewVars(['result' => $this->User->find('first', $options) ]);
|
31
|
+
$CakePdf->template('bsprint', 'bootstrap');
|
32
|
+
$CakePdf->orientation('landscape');
|
33
|
+
$pdf = $CakePdf->output();
|
34
|
+
$pdf = $CakePdf->write(TMP."hoge.pdf");
|
35
|
+
}
|
36
|
+
}
|
37
|
+
```
|
38
|
+
**app/View/User/pdf/bsprint.ctp**
|
39
|
+
```lang-php
|
40
|
+
<table class="table table-condensed">
|
41
|
+
...
|
42
|
+
<!--- ここにbootstrap3で装飾した表が入る --->
|
43
|
+
...
|
44
|
+
</table>
|
45
|
+
```
|
46
|
+
**app/View/Layout/pdf/bootstrap.ctp** にて、bootstrap3等の読み込み
|