CakePHPヘルパーの読み込み

これは複数の部分の質問です。

背景:

私はCakePHPを使って私の最初のサイトを構築しています。私は、DBの設定、初期データの読み込み、およびいくつかのモデル、ビュー、およびコントローラとデータのインターフェイスを持っています。

I've created a globally accessible function to create Add/Edit/Delete type image links in various areas. It will be used across multiple views, so I need it accessible, essentially, everywhere. The function is defined in /app/config/bootstrap.php. I was hoping to use the HTML Helper's $html->image() and $html->link() methods to facilitate this, but they're not available in bootstrap.php and I'm not sure how to load/access the HTML Helper where I've defined my function.

質問:

1)これは、この種の関数を定義するための合理的/慣用的な場所ですか?

2)これが関数を定義する正しい場所でない場合は、どこで定義する必要がありますか?

3)これが関数を定義する正しい場所であれば、さまざまなCakePHPヘルパーのロード方法を教えてください。

繰り返しますが、私はCakePHPの初心者ですので、私の質問が不明な場合はお知らせください、私の無知を許してください。私はかなりの量のCakePHPドキュメントを読んだり、検索したりしましたが、 App :: import(...);$ AppController クラスに固有の $ helpers メンバは、Appオブジェクトへのアクセス権を持っていないようです。helpers = array(...); 、 私が想定し。私はこれについて間違っていると思うので、これを達成するためのケーキの方法を理解してください。

1

1 答え

いいえ、それはそのような関数にとって正しい場所ではありません(または、より正確には、MVCのパラダイムに反する)。より良いアプローチは、関数の独自のヘルパーを作成することです。リンクの複雑さによっては、要素を使用することもできます。

経験則として、アプリケーション内の他のものとは完全に独立している関数のみがbootstrap.phpになければならず、それらのほとんどはしばしば他の場所より優れているはずです。

2
追加された
偉大な、助けてくれてありがとう、私は今働いている!
追加された 著者 theraccoonbear,