パネルは用語をキャッシュする-引数によるキャッシュとコンテキストによるキャッシュの違いは何ですか?


7

Panelsキャッシングの設定方法を学習しようとしています。私はDrupalキャッシングのマスターに関するビデオを見て、アールマイルズのパネルとビューに関する本、Drupalのビルディングブロックを持っていますが、残念ながら、特にキャッシングに関する章はありません。

そのため、ユーザープロファイルを上書きするパネルがあり、このパネルには、ビューコンテンツペインがいくつかあるバリアントがあります。これらのコンテンツペインは、表示されるユーザーごとに異なるはずなので、表示されるユーザープロファイルごとにキャッシュしたいと思います。

これらの各コンテンツペインには、[ コンテンツ:作成者UID]に対するコンテキストフィルターがあります。

値は、ビューの引数入力オプションによってパネルに提供されます。このコンテンツの場合コンテンツ:作成者uidソースFromコンテキストに設定され、必須コンテキストUser IDに設定されます

スクリーンショットを表示

パネルの[ シンプルキャッシュ構成]画面の[ 粒度]で、[ 引数]または[ コンテキスト]を選択できます。ヘルプテキストは次のとおりです。

「引数」を選択すると、このコンテンツは個々の引数ごとにディスプレイ全体にキャッシュされます。「コンテキスト」が選択されている場合、このコンテンツはペインまたはディスプレイの一意のコンテキストごとにキャッシュされます。「どちらでもない」場合、このペインのキャッシュは1つだけです。

しかし、ビューでは、オプションは引数入力と呼ばれ、選択した値はコンテキストからのものでした。それで私は議論または文脈を扱っていますか?

可能であれば、この場合の議論と文脈の違いを説明する一般的な回答と、私の質問に対する具体的な回答の両方が素晴らしいでしょう。


答えを投稿しました。うまくいけば、一般的な質問とあなたの状況の両方に答えることができますが、答えなかった場合はお知らせください。
Letharion 2013

回答:


7

免責事項:私は通常、セットアップが単純で、区別が必要ないほど簡単であることを知っています。したがって、実際の経験は限られていることを認めなければなりません。

Arguments、URLに基​​づいています。node/5別にキャッシュされますnode/75 7.異なっているので、node/5/7あなたがそのようなパスを持っているところならば、さらに別のキャッシュです。

Contexts、は通常から派生しArguments、上記の例では、どのキャッシュオプションを選択するかに関係なく、キャッシュはまったく同じである可能性が非常に高くなります。ただし、はContexts、(少なくとも)他の3つのソースRelationships、手動で定義されたソース、および特別なケースであるログインしたユーザーから取得することもできます。

コンテキストがURLからのノードであり、ユーザーがノードからプルさentity referenceれた場合、コンテキストには2つの一意のエンティティまたは2つのコンテキストがありますが、引数は1つだけです。

そのため、キャッシュで「余分な」コンテキストを問題にするかどうかを選択するContextか、Argument依存します。

しかし、ビューでは、オプションは引数入力と呼ばれ、私が選択した値はコンテキストからのものでした。それで私は議論または文脈を扱っていますか?

残念ながら、用語は2つのモジュール間でまったく同じではありません。パネルはURL引数の動的な部分を呼び出し、それからコンテキストを作成します。ビューは、引数を参照する場合、関数の引数により近いものを意味し、この特定の場合、パネルから渡されたコンテキストから引数を導き出します。


だから、私はキャッシュの両方を考慮に入れたい場合は、言ってログインしているユーザーユーザーが表示されている、私が使用する必要があるコンテキストにない引数を
Patrick Kenny

1
はい、そのような状況で引数を使用すると、ログインしたユーザーは無視されます。
Letharion 2013

それをコンテキストソースのリストに追加しました。
Letharion 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.