{ "info": { "author": "Command Prompt, Inc.", "author_email": "support@commandprompt.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Database", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "README File for Simpycity\n=========================\n\nWhat Simpycity Is\n-----------------\n\nSimpycity is an object-relational mapper. It seamlessly maps PostgreSQL query \nand function result sets to Python classes and class attributes.\n\nIt allows for the easy and rapid development of query- and\nstored procedure-based data representations. Simpycity leverages PostgreSQL's\npowerful composite type system, and the advanced type handling of the psycopg2\ndatabase access library.\n\nWhat Simpycity is Not\n---------------------\n\nSimpycity is not a SQL generator and does not attempt to abstract or hide SQL. \nSimpycity is designed for developers who deeply understand SQL and\ndesire to write the best possible SQL representations for their database. \nSimpycity also rejects the Active Record and Data Mapper paradigms, whose \nsimplistic patterns fail in even moderately complex systems.\n\nCore Philosophy\n---------------\n\nThe core philosophy behind Simpycity is that the Database and the Application\nare separate entities, each with distinct abilities and design\nrepresentations; this echoes the classic Object versus Relation argument.\nIt provides a mechanism where a single business Object can easily represent\nseveral Relations, and allow the base Relational layer to follow normal forms\nwithout compromising or complicating application design.\n\nUsage\n-----\n\nAt its simplest, object-relation mapping looks like::\n\n --SQL\n create table foo (id int, name text);\n insert into foo (id, name) values (1, 'one'), (2, 'two');\n\n #Python\n class Foo(simpycity.model.SimpleModel):\n pg_type = ('public', 'foo')\n __load__ = simpycity.core.QuerySingle('foo',['id'])\n\n my_foo = Foo(1)\n print(my_foo.name)\n >>>one\n\nRead the tutorial_ for more narrative help.\n\nLicense\n-------\n\nSimpycity is licensed under the LGPL license, and a copy of your rights and\npermissions is available in the LICENSE file included in your distribution.\n\nContact\n-------\n\nThe official source repository is https://github.com/commandprompt/Simpycity\n\nFor support, questions, and additional help with Simpycity, please feel free\nto contact us on github.\n\n.. _tutorial: tutorial.html", "description_content_type": null, "docs_url": "https://pythonhosted.org/Simpycity/", "download_url": "https://github.com/commandprompt/Simpycity/releases/tag/2.0.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/commandprompt/Simpycity", "keywords": "orm postgresql", "license": "LGPL", "maintainer": "", "maintainer_email": "", "name": "Simpycity", "package_url": "https://pypi.org/project/Simpycity/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/Simpycity/", "project_urls": { "Download": "https://github.com/commandprompt/Simpycity/releases/tag/2.0.1", "Homepage": "https://github.com/commandprompt/Simpycity" }, "release_url": "https://pypi.org/project/Simpycity/2.0.1/", "requires_dist": null, "requires_python": "", "summary": "A database-respecting object-relational mapper for PostgreSQL.", "version": "2.0.1" }, "last_serial": 2491079, "releases": { "0.3.1": [ { "comment_text": "", "digests": { "md5": "8941845f6fba66a3c5353646ebce3dc7", "sha256": "a2fc3a830fd123096b8982392014e2c2a6015136c82e02ed6ab781488cbb64ef" }, "downloads": -1, "filename": "Simpycity-0.3.1.tar.gz", "has_sig": false, "md5_digest": "8941845f6fba66a3c5353646ebce3dc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18129, "upload_time": "2010-07-20T21:30:43", "url": "https://files.pythonhosted.org/packages/45/c4/f37aa1c71ff069a722f9025e4b52dd487972b48ea88ae9ac23006a057cca/Simpycity-0.3.1.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "0f5c857cb7e4db5f252baa1a02a25d5a", "sha256": "d9198f347470a0200353bcd5c36a7c713960b39ef87f7661968f759749b9d627" }, "downloads": -1, "filename": "Simpycity-2.0.0-py2-none-any.whl", "has_sig": true, "md5_digest": "0f5c857cb7e4db5f252baa1a02a25d5a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19377, "upload_time": "2016-07-07T03:56:17", "url": "https://files.pythonhosted.org/packages/62/e1/c727679be70c2c29fb93e1664a2a1ba9bbdaac947376b23544a70bd83fea/Simpycity-2.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0df9e3b0eb9f260c5f22106010288004", "sha256": "4a6b6a1d52fb311c770e83f88644b17912ca613fee8c052cb458777ca2ac0f6d" }, "downloads": -1, "filename": "Simpycity-2.0.0.tar.gz", "has_sig": true, "md5_digest": "0df9e3b0eb9f260c5f22106010288004", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15400, "upload_time": "2016-07-07T03:54:08", "url": "https://files.pythonhosted.org/packages/59/18/0aeb76c8abd24c9998455c99ca4304e1e718bb6dfea8267f69b784c54f42/Simpycity-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "f957567f536154326e88da5e7a2f0ce5", "sha256": "c3e4a7f1981d7e9d151f5b19fe3f5f9b046b170d473bae032900f9443badf48f" }, "downloads": -1, "filename": "Simpycity-2.0.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f957567f536154326e88da5e7a2f0ce5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 21455, "upload_time": "2016-11-30T05:42:56", "url": "https://files.pythonhosted.org/packages/eb/be/a29aa9b7e4ed2122db0b195a73f5a6f9910f4363bbf84bb5abf6424d1053/Simpycity-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44e270701552db10888017e2c22ad348", "sha256": "646ab8b8465d04866014c580f9dff3c46da175916fc94011efddb0904d2f8a6f" }, "downloads": -1, "filename": "Simpycity-2.0.1.tar.gz", "has_sig": true, "md5_digest": "44e270701552db10888017e2c22ad348", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28318, "upload_time": "2016-11-30T05:40:42", "url": "https://files.pythonhosted.org/packages/38/f0/716827819be0fbf8f56212ea9669241ecba530709ec4dc69b16b249886c5/Simpycity-2.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f957567f536154326e88da5e7a2f0ce5", "sha256": "c3e4a7f1981d7e9d151f5b19fe3f5f9b046b170d473bae032900f9443badf48f" }, "downloads": -1, "filename": "Simpycity-2.0.1-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "f957567f536154326e88da5e7a2f0ce5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 21455, "upload_time": "2016-11-30T05:42:56", "url": "https://files.pythonhosted.org/packages/eb/be/a29aa9b7e4ed2122db0b195a73f5a6f9910f4363bbf84bb5abf6424d1053/Simpycity-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44e270701552db10888017e2c22ad348", "sha256": "646ab8b8465d04866014c580f9dff3c46da175916fc94011efddb0904d2f8a6f" }, "downloads": -1, "filename": "Simpycity-2.0.1.tar.gz", "has_sig": true, "md5_digest": "44e270701552db10888017e2c22ad348", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28318, "upload_time": "2016-11-30T05:40:42", "url": "https://files.pythonhosted.org/packages/38/f0/716827819be0fbf8f56212ea9669241ecba530709ec4dc69b16b249886c5/Simpycity-2.0.1.tar.gz" } ] }