、グラフ()頂点へのプロキシとエッジとして機能している - クライアントは、(頂点にアクセスして、グラフを通るエッジが):Pythonでプロキシパターンを使用する場合、プロキシクラスはどのように呼び出しオブジェクトの状態にアクセスできますか?次のコードで
from rest import Resource
from elements import Vertex, Edge
class Graph(object):
def __init__(self,db_url):
self.resource = Resource(db_url)
self.vertices = Vertex
self.edges = Edge
g1 = Graph('http://localhost/one')
g2 = Graph('http://localhost/two')
アクセスに頂点と辺のための最善の方法は何ですかVertexとEdgeのパラメータとして渡す必要はありませんか?
VertexとEdgeにはリソースオブジェクトへのアクセスが必要なcreate()などのclassmethodがあるため、パラメータとして渡したくない理由の1つです。
Flask/Werkzeugは "コンテキストローカル"(http://werkzeug.pocoo.org/docs/local/)を使用しています - これは正しいアプローチですか、それとも良い方法ですか?
代理人は別の参照を意味しますか? –
この場合、グラフ()はVertexとEdgeへのプロキシとして機能します。 – espeed
Pythonのファンは、インタプリタ自体が依存性注入フレームワークであるということを無視する傾向がありますが(「クラスの名前を動的に変更することができるため」、プロキシオブジェクトの使用をやめて「Dependency Injection」を読むことをお勧めします)あなたの状況に合わせて) – Arafangion