0

ユーザーがHTMLテンプレートを参照できるようにするアプリケーションを構築しています。htmlテンプレートはプレビュー領域に表示され(ソースコードは難読化されます)、テンプレートにはインラインCSS / JSが含まれますが、奇数のリンクされた画像アセットも含まれます。

このため、HTMLをデータベースに保存して外部アセットも整理するのではなく、フォルダーのライブラリとして保存し、サーバーからフラットファイルを取得して表示するのが最善だと思いました。 。

私の質問は次のとおりです。CakePHPディレクトリ構造のどこに、これらのファイルの最適なホームがありますか?私はむしろそれらをwebrootの上に置きたいので、Viewを考えています。

何か案は?ありがとう。

4

2 に答える 2

1

それらが公開されているアセットであるのに、なぜそれらをWebルートの上に保存したいのですか?私の直感は、それらが実際にWebルートまたはデータベースに属しているということです。どちらかを選びます。

それらをwebrootの上に保存する必要がある場合は、要素として保存するのが最善だと思います。

app/View/Elements/your_templates/

そうすれば、次を使用してビューのプレビュー領域にロードできます。

echo $this->element('your_templates/template');

編集:

正直なところ、要素の提案は私がお勧めするものではありません。私はあなたにさまざまな提案を提供しようとしているだけです。それはひどく悪い習慣であり、それは価値があるよりも厄介で問題があると思います。

画像ファイルについては、HTMLテンプレートの保存場所に関係なく、Webルートに配置してください。とにかく彼らが彼らのブラウザでそれらを見たら、あなたは人々が画像をダウンロードするのを止めることはできません。

于 2013-01-29T16:04:56.017 に答える
1

webrootの下に保存されている、 cakephp-frameworkに関連するすべてのファイルを保持することをお勧めします。

私の提案は、htmlテンプレートとcssおよびjs関連ファイルを保存するための次のディレクトリ構造です。

/webroot/files/templates/<template-project-name>/<the-actual-file>.html

外部のCSSは、 /webroot/css/templates/<template-project-name>/<the-actual-css>.css

そして、JSライブラリは /webroot/js/templates/<template-project-name>/<the-actual-js>.js

preview_layout.ctpテンプレートファイルをそのままレンダリングする別のレイアウトファイル(と呼びます)を使用します。

それが役に立てば幸い

于 2013-01-29T16:17:49.287 に答える