Ploneで親フォルダーからリソースを取得する良い方法は?

StackOverflow https://stackoverflow.com/questions/4192290

  •  10-10-2019
  •  | 
  •  

質問

フォルダーに応じてレイアウトを変更する必要があるPlone(4.0.1)サイトがあります。次のような構造を想像してください:

University > Faculty A > Institute A1 > Person A11
                                      > Person A12
                       > Institute A2 > Person A21
...

必要なすべてのリソース(カスタムCSSファイル、画像など)をZODBに入れた場合、Person A11のページは、ファカルティAフォルダーにあるFAC-IMAGE.gifを自動的にピックアップします。

ただし、混乱を避けるために、fac-image.gifをユーザーに公開したくありません。 (これはすべて、とにかく触れるべきではないフレームワークの一部です。)

リソースを登録すると、++リソース++ themages.images/pathで物をアクセスできますが、両親からの取得は行われていないため、++ resource ++ themage.images/fanfultya/institutea1/fac-image.gif画像が見つかりません。さらに悪いことに、私は今維持するための別のディレクトリ構造を持っています。

私が現在していることは、ファイルシステムディレクトリビューを介して「最善の努力」トラバーサルプロセスを手でロールすることです。これは、パスを下ってみようとします。サブディレクトリが存在しない場合にとどまります(つまり、リソースツリーが行いません'Tsern A11のサブディレクトリがあります。404を叫ぶ代わりに、Institute A1)を獲得してから、バックアップを取得してみてください。 Portal_FactoryとViewsにはいくつかのトリックが関係しており、私はもっと逃したと確信しています。

だから:それは確かにそれをするべき方法ではないが、何ですか?

役に立ちましたか?

解決

このユースケースをplone3に実装するCollective.phantasyからインスピレーションを与えることができます(フォルダーコンテナのL&Fを変更します)。

他のヒント

CSSを使用します。

現在のセクション /ファカルティ /選択のアスペクトに基づいてクラスでタグをタグ付けし、それらのクラスに基づいて画像を変更するだけです。コンテンツとは別に視覚的なデザインを保管してください!

そうあるようです。最終的に、コンテキストパスを調べてマングルするヘルパービューを登録し、他の場所をファイルシステムディレクトリビューに指していることになりました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top