What is AutoDateManipulator?

On Friday, March 25, 2011 5:49:31 PM UTC-5, oO wrote:
>
> I'm not using MongoEngine, so I don't know about the particulars. I am 
> however using PyMongo, and I'm using a different setup from the cookbook.
>
> I setup the mongo connection as part of the RootFactory object (the one in 
> config that returns the root resource)
> When creating the root object, the root factory adds the already existing 
> connection to the root resource root.db
> views can always access the resource context, and the resource context can 
> always access the root, and therefore the mongo db.
>
> class MongoRootFactory(object):
>     """Root Factory with a MongoDB connection"""
>     
>     def __init__(self, settings):
>         """Initialize the factory by creating the mongo connection"""
>         self.__mongo_uri = settings['mongo.uri']
>         self.__mongo_db = settings['mongo.db']
>         #Create the MongoDB connection    
>         self.connection = pymongo.Connection(self.__mongo_uri)
>         self.db = self.connection[ self.__mongo_db ]
>         self.fs = GridFS(self.db)
>         #Add the manipulator
>         self.db.add_son_manipulator( AutoDateManipulator() )
>     
>     def __call__(self, request):
>         """Return the root of the resource hierarchy"""
>         #Create the root resource if it doesn't exists.
>         if self.root == None:
>             self.root = self.create_root()
>         #Update the request object so the resource can access it.
>         self.root.request = request
>         self.root.db = self.db
>         self.root.fs = self.fs
>         return self.root
>
>     def create_root(self):
>         #log.debug("RootFactory: create the root object")
>         return Root()
>
>
> The RootFactory object lives inside the application, so the connection 
> doesn't get created/closed for every request. I also find that the DB 
> connection is something that should belong to the resources, not the 
> request. (and you can always get it from the request using request.root.db
>
> oO
>

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/pylons-discuss/-/UFsrvz5UJfYJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.

Reply via email to