CookBook といくつかのコード例を見ると、view.ctp$this->App->js();
にインクルードすると JS [CDATA] が出力されると思われますが、致命的なエラーが発生します。
致命的なエラー: 32 行目の /Users/work/Dropbox/Websites/cake-cart/app/View/Layouts/default.ctp の非オブジェクトに対するメンバー関数 js() の呼び出し
ログを見ると、以下に関連するディスパッチ エラーのみが表示されます。
2012-11-26 13:15:39 エラー: [MissingControllerException] コントローラー クラス CssController が見つかりませんでした。//app/webroot/index.php(92): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse)) {main}
追跡できません。システムの知識が足りないのかもしれません。より多くの経験を積んだ人はいますか?
私のセットアップに関する唯一のこと-関連しているかどうかはわかりません-ブートストラップテーマを使用していて、AppController APP/View/Themed/Bootstrap/ でテーマを設定したことです
class AppController extends Controller {
public $theme = "Bootstrap";
...
これは問題なくサイトを提供しているように見えます...しかし、この js() 致命的なエラーとその CSSController エラーがログに記録されています。
どんな助けでも感謝します、ありがとう。
**編集済み**
わかりました...私はこの図を取得しています。私が参照している例では、APP/View/Helper/AppHelper.php に次のようなパブリック関数を作成したようです。
class AppHelper extends Helper {
public $helpers = array(
'Html',
'Form',
'Session',
'Js',
);
public function js() {
$shop = array();
$shop['basePath'] = Router::url('/');
$shop['params'] = array(
'controller' => $this->params['controller'],
'action' => $this->params['action'],
);
return $this->Html->scriptBlock('var Shop = ' . $this->Js->object($shop) . ';');
}
}
...だから、default.ctp で $this->App->js() になる理由は理にかなっています....しかし、まだエラーが発生しています