次のコードでは、Graph()はVertexとEdgeのプロキシとして機能しています。クライアントはGraph()を介してのみVertexとEdgeにアクセスします。
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がリソースオブジェクトにアクセスするための最良の方法は何ですか?
これをパラメータとして渡したくない理由の1つは、VertexとEdgeに、リソースオブジェクトにもアクセスする必要があるcreate()などのクラスメソッドがあるためです。
Flask / Werkzeugは「コンテキストローカル」(http://werkzeug.pocoo.org/docs/local/)を使用しています-これはここでの正しいアプローチですか、それともより良い方法がありますか?