4

にオブジェクトがあるとします/school1/document-rules

別のコンテキストで/school2、 で利用できるものと同じdocument-rulesものを用意する必要があるとします/school1/document-rules

ZODB では、 と を持つということは、2 つの異なるオブジェクトがあること/school1/document-rulesを意味します。/school2/document-rules

/school2/document-rules 参考 にできるか知りたいです/school1/document-rules。したがって、/school2/document-rules「ReferenceDocument」、「ReferenceLink」、または単に を指すシンボリック リンクのようなものになり/school1/document-rulesます。

なんで?ドキュメントは同じですが、同じドキュメントを異なるコンテキストで使用する方が (意味論的に) 意味がある場合があります。コンテキストに応じてレンダリングされるポートレットがあり、複製したくありませんdocument-rules

私が探しているようなものは存在しますか?Bultinまたはモジュールを使用していますか?

4

3 に答える 3

7

SimpleAliasは、あなたが望むことを行います。私はそれを使用しましたが、うまく機能します。また、 collective.aliasを見ることもできます

于 2011-02-19T14:27:01.723 に答える
1

ZODB は、プレーンな Python で期待されるように、参照を透過的に処理します。ここにいい説明があります。

オブジェクトを削除する場合は、同じオブジェクトに対する複数の参照に注意する必要があります。そのために、Python標準ライブラリのweakrefと同等のZODBのweakrefモジュールを使用して、「シンボリックリンク」に弱い参照を使用することができます。

于 2011-01-29T23:06:43.610 に答える
1

これにはRedirectionToolという製品を使用しました。

于 2011-03-15T22:46:22.473 に答える