Metadata-Version: 1.1
Name: pymongodm
Version: 0.0.3
Summary: pymongodm
Home-page: https://github.com/GlobalStudioES/pymongodm
Author: GlobalStudio
Author-email: contacto@globalstudio.es
License: GPL
Description: pymongodm
        =========
        
        pymongodm is a odm respecting pymongo functionality and adds
        functionality such as model validation.
        
        ## connect db \`\`\`python import pymongodm
        
        pymongodm.connect('name\_db') \`\`\`
        
        or
        
        \`\`\`python import pymongodm import pymongo
        
        db = pymongo.MongoClient()['name\_db'] pymongodm.connect(db) \`\`\`
        
        ## use db \`\`\`python import pymongodm
        
        pymongodm.connect('example\_db')
        
        # Identical to pymongo pymongodm.db.nice\_collection.insert({'name':
        'pepis'}) print(pymongodm.db.nice\_collection.find\_one()) \`\`\`
        
        ## use models!
        
        \`\`\`python import pymongodm pymongodm.connect("gstudio")
        
        from pymongodm.models import Base
        
        class User(Base): schema = {"name": {'type': str}, "other": {'type':
        list, 'required': False}} # optional, default is class\_name + s
        collection\_name = "random\_name"
        
        ::
        
            def cut_name(self):
                return self.name[:3]
        
        insert
        ======
        
        result = User({'name': 'pepito'}) print("id in db", result.\_id)
        
        convert dict to object Model
        ============================
        
        a = User({'\ *id': result.*\ id, 'name': result.name}) b =
        User(result.getattrs()) # get attrs return only db attrs
        
        convert result finds to model
        =============================
        
        results = pymongodm.db.users.find().model(User)
        
        for result in results: print(result.\ *id) print(result.name)
        print(result.cut*\ name())
        
        Modify values
        =============
        
        results = pymongodm.db.users.find().model(User) for result in results:
        result.name = "Pymongodm\_%s" % result.name result.other = ["random",
        "info"] result.update()
        
        Remove
        ======
        
        result.remove()
        
        \`\`\`
        
        ## Rewrite basic methods Only need declare identic name in your class
        
        .. code:: python
        
             
            class User(Base):
                schema = {"name": {'type': str},
                          "other": {'type': list, 'required': False}}
                # optional, default is class_name + s
                collection_name = "random_name"
        
                def remove(self):
                    print("uhm ...")
        
        Plugins
        -------
        
        TODO ...
        
        
        0.0.3 (6-6-2016)
        ================
        
        -  Update readme
        -  Fix minor bugs
        
        0.0.2 (3-6-2016)
        ================
        
        -  Fix pip install
        
        0.0.1 (3-6-2016)
        ================
        
        -  Initial version
        
        
Keywords: globalstudio,odm,mongo,pymongo
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3
