{ "info": { "author": "Future Projects", "author_email": "info@futureprojects.io", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python :: 3.7" ], "description": "# firestore-model\n\nQuickly and simply create model classes for Google's Cloud Firestore schemaless database. \n\n\n## Overview\nThis project seeks to provide a similar convenience and utility for using Cloud Firestore with the newly available Python 3.7 App Engine Envinronment as the NDB client library does for using Cloud Datastore with Python 2.7 App Engine.\n\n## Example\n\n```\nimport firestore_model\nfrom google.firestore import firestore\nfrom filestore_model import Model, Query\n\n# initialize the database connection globally for Firestore Model \nfirestore_model.db = firestore.Client()\n\n# Define a data structure for a User\n@dataclass\nclass User(Model):\n first_name:str\n last_name:str\n occupation:str\n\n# Create a new user, pass save = True to automagically save the model object\nu1 = User.make(\n first_name='Sonic',\n last_name='Brown',\n occupation='circus dog'\n save=True\n )\n\n# Fetch all users that match a given query\nusers = User.query([\n ('occupation', 'circus dog'), \n ('created', '>', 1540776978)\n ]\n).get()\n\n# Iterate through the results of the query\nfor u in users:\n print(u.id, u.created, u.first_name, u.last_name, u.occupation)\n```\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/futureprojects/firestore-model", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "firestore-model", "package_url": "https://pypi.org/project/firestore-model/", "platform": "", "project_url": "https://pypi.org/project/firestore-model/", "project_urls": { "Homepage": "https://gitlab.com/futureprojects/firestore-model" }, "release_url": "https://pypi.org/project/firestore-model/0.0.4/", "requires_dist": null, "requires_python": "", "summary": "A wrapper for creating model classes using Google's Cloud Firestore schemaless database", "version": "0.0.4" }, "last_serial": 5156171, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "10de612537b1b4d4dbd0094aa80cc2d3", "sha256": "204c94bfe1ca402a955d4c508994948294af2667a597a83dc9baef054463cfaa" }, "downloads": -1, "filename": "firestore_model-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "10de612537b1b4d4dbd0094aa80cc2d3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3285, "upload_time": "2018-10-29T01:02:06", "url": "https://files.pythonhosted.org/packages/b0/54/3b0ecb05fc4aaca4bb0d82a5f80b77a37d48f4896e131fe73fff5ebb96dc/firestore_model-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "013a653dcc7c38a9b9eb2162a2430058", "sha256": "ad06bd03aee2cbe03cf758e7c543ede6e35322f2d2ee10ed2d36b0f41e5b0cd5" }, "downloads": -1, "filename": "firestore_model-0.0.1.tar.gz", "has_sig": false, "md5_digest": "013a653dcc7c38a9b9eb2162a2430058", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2836, "upload_time": "2018-10-29T01:02:08", "url": "https://files.pythonhosted.org/packages/67/7e/323c0290595aa031baeadcf978748339a9fbc763903fc2a845c70ce477b0/firestore_model-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "5284ca6dfd195278d814f92a210f15eb", "sha256": "a586ccf12e8eff81b5451736bf365ec62872bf90467c80ed11fdba388b44c958" }, "downloads": -1, "filename": "firestore_model-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "5284ca6dfd195278d814f92a210f15eb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3913, "upload_time": "2018-10-29T01:48:01", "url": "https://files.pythonhosted.org/packages/5d/3f/64b9dbd240636cf6508260698dfc3a5b7750d65cc79c1ab4e4d842aa0247/firestore_model-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bf3a4c1df37362ef5086c1d43e62fbb3", "sha256": "47de5ad54fad9569e4d5a24fc25c5c60d1425c2b0225b109ce9ee59ba06d1002" }, "downloads": -1, "filename": "firestore_model-0.0.2.tar.gz", "has_sig": false, "md5_digest": "bf3a4c1df37362ef5086c1d43e62fbb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3572, "upload_time": "2018-10-29T01:48:02", "url": "https://files.pythonhosted.org/packages/68/9d/5587a31542277cac3c652505aba204f164e7d287869483365cb06c335e17/firestore_model-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "e3cab42d33a3af12ee0a29736f630c3b", "sha256": "4b80d9f0711efa43e376a0cba4085d0a70a0cae70063dea14abe6e6a2c60fff4" }, "downloads": -1, "filename": "firestore_model-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "e3cab42d33a3af12ee0a29736f630c3b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3806, "upload_time": "2018-10-29T02:22:54", "url": "https://files.pythonhosted.org/packages/d0/de/86f794d8dffbfba9d27ee1a621f14d3a32a1e15f52c4318b08ec5a7c76eb/firestore_model-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c08a86b922d9270c271ddd3016c746c", "sha256": "d265223522c771bdc9b2f751ec833359d1d3e963d2dd10c69ebe411966f09c3f" }, "downloads": -1, "filename": "firestore_model-0.0.3.tar.gz", "has_sig": false, "md5_digest": "5c08a86b922d9270c271ddd3016c746c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3458, "upload_time": "2018-10-29T02:22:56", "url": "https://files.pythonhosted.org/packages/5e/aa/7b5f094375fa9d59a1e3dbbf9a66246ee3e9334cc799d2a6442aa9a089b0/firestore_model-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "8976c100d199ef3f067a39f0512bafff", "sha256": "f663c87621b641b0d238cdfd900fe0ff0fb7918e389388cd89eb6230afaeed8f" }, "downloads": -1, "filename": "firestore_model-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "8976c100d199ef3f067a39f0512bafff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16139, "upload_time": "2019-04-17T16:52:57", "url": "https://files.pythonhosted.org/packages/76/7f/661dd150d092a9abad3fd599f426c1a5872b32c1c0dcef124a6097765b44/firestore_model-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7480c9f63622307de8d3917171a51184", "sha256": "20f2ad2b554b90160c7c157b0ac4e2089d1b70dcf53c4fadccf2b6d86ddcce95" }, "downloads": -1, "filename": "firestore_model-0.0.4.tar.gz", "has_sig": false, "md5_digest": "7480c9f63622307de8d3917171a51184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3493, "upload_time": "2019-04-17T16:52:58", "url": "https://files.pythonhosted.org/packages/a7/54/cc42046b4c363c7dde2d90e8abf92be10810bae9eaee3760462a2e7b0106/firestore_model-0.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8976c100d199ef3f067a39f0512bafff", "sha256": "f663c87621b641b0d238cdfd900fe0ff0fb7918e389388cd89eb6230afaeed8f" }, "downloads": -1, "filename": "firestore_model-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "8976c100d199ef3f067a39f0512bafff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16139, "upload_time": "2019-04-17T16:52:57", "url": "https://files.pythonhosted.org/packages/76/7f/661dd150d092a9abad3fd599f426c1a5872b32c1c0dcef124a6097765b44/firestore_model-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7480c9f63622307de8d3917171a51184", "sha256": "20f2ad2b554b90160c7c157b0ac4e2089d1b70dcf53c4fadccf2b6d86ddcce95" }, "downloads": -1, "filename": "firestore_model-0.0.4.tar.gz", "has_sig": false, "md5_digest": "7480c9f63622307de8d3917171a51184", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3493, "upload_time": "2019-04-17T16:52:58", "url": "https://files.pythonhosted.org/packages/a7/54/cc42046b4c363c7dde2d90e8abf92be10810bae9eaee3760462a2e7b0106/firestore_model-0.0.4.tar.gz" } ] }