{ "info": { "author": "Yurzs", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# ramorm [Alpha]\nModel based ORM in RAM. Made for performance. Please do not store critical data (yet)\n\n![codecov](https://codecov.io/gh/Yurzs/ramorm/branch/master/graph/badge.svg)\n\n### Installation\n```\npip install ramorm\n```\n### Usage\n```python\nfrom ramorm import orm, model\n\ndb = orm.Orm('my_test_database') \n\nclass Vehicle(model.Model):\n name = model.TextField()\n wheels = model.IntegerField(default=4)\n max_speed = model.IntegerField(default=100)\n\nsports_car = Vehicle(name='Aventador', max_speed=230)\nprint(sports_car.name,sports_car.wheels, sports_car.max_speed)\n>> 'Aventador' 4 230\n\nbicycle = Vehicle(name='Bicycle', wheels=2, max_speed=50)\nprint(bicycle.wheels, bicycle.max_speed)\n>> 'Bicycle' 2 50\n```\nAdd your model based objects to database using ```push``` function, you can pass one or multiple objects at once\n```python\ndb.push(sports_car, bicycle)\n```\nRetrieving single objects from database is possible using ```get``` function\n```python\nprint(db.get(Vehicle, wheels=4).name)\n>> 'Aventador'\n\nprint(db.get(Vehicle, name='Bicycle').max_speed\n>> 50\n```\nFor filtering numerical parameters you can use ```__gt``` (greater), ```__gte``` (greater or equal), ```__lt``` (lower), ```__lte```(lower or equal)\n```python\nprint(db.get(Vehicle, max_speed__gt=70).name)\n>> 'Aventador'\n```\nFor retrieving multiple objects at once use ```filter```\n\n```python\nfor vehicle in db.filter(Vehicle, max_speed__gte=10):\n print(vehicle.name, vehicle.wheels, vehicle.max_speed)\n>> 'Aventador' 4 230\n>> 'Bicycle' 2 50\n```\nFor deleting objects from db use ```delete``` function. Returns ```True``` if changes were made to database\n```python\ndb.delete(Vehicle, name='Bicycle')\n>> True\ndb.delete(Vehicle, name='Starship')\n>> False\n```\nIf you want completely delete all data in your database use ```drop```\n.Returns array of objects in db (empty)\n```python\ndb.drop()\n>> []\n```\n### Coming soon\n\n- [ ] Delete objects using ```.delete()```\n\n- [ ] Order by\n\n- [ ] Backup to file\n\n- [x] PyPI package\n\n- [ ] Integration with postgresql, redis\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://github.com/Yurzs/ramorm", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ramorm", "package_url": "https://pypi.org/project/ramorm/", "platform": "", "project_url": "https://pypi.org/project/ramorm/", "project_urls": { "Homepage": "https://github.com/Yurzs/ramorm" }, "release_url": "https://pypi.org/project/ramorm/0.0.11/", "requires_dist": null, "requires_python": "", "summary": "Model based ORM in RAM", "version": "0.0.11" }, "last_serial": 5159239, "releases": { "0.0.11": [ { "comment_text": "", "digests": { "md5": "d32921bf5c64308b79f2ad9c52a09552", "sha256": "e42eeb2b4b11f4563ad0a244cf0578376fb219f1acb5cbbc5906e9e1b4405a90" }, "downloads": -1, "filename": "ramorm-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "d32921bf5c64308b79f2ad9c52a09552", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5992, "upload_time": "2019-04-18T09:43:02", "url": "https://files.pythonhosted.org/packages/d6/c5/d89edd002a9ab541dd30209cd437b15143eccf104be57a254f2fece23897/ramorm-0.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ebc2b2be0a61080dfbb1913db4f30577", "sha256": "dd530664685d51d4bd9ccf2479f2b74c083caf22b6350539ca02fbac65965cd5" }, "downloads": -1, "filename": "ramorm-0.0.11.tar.gz", "has_sig": false, "md5_digest": "ebc2b2be0a61080dfbb1913db4f30577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4235, "upload_time": "2019-04-18T09:43:04", "url": "https://files.pythonhosted.org/packages/25/4a/99f6fdf499754dbf10250ea3db468f0b7451cfa88016b7c3ee9a827d4abf/ramorm-0.0.11.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d32921bf5c64308b79f2ad9c52a09552", "sha256": "e42eeb2b4b11f4563ad0a244cf0578376fb219f1acb5cbbc5906e9e1b4405a90" }, "downloads": -1, "filename": "ramorm-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "d32921bf5c64308b79f2ad9c52a09552", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5992, "upload_time": "2019-04-18T09:43:02", "url": "https://files.pythonhosted.org/packages/d6/c5/d89edd002a9ab541dd30209cd437b15143eccf104be57a254f2fece23897/ramorm-0.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ebc2b2be0a61080dfbb1913db4f30577", "sha256": "dd530664685d51d4bd9ccf2479f2b74c083caf22b6350539ca02fbac65965cd5" }, "downloads": -1, "filename": "ramorm-0.0.11.tar.gz", "has_sig": false, "md5_digest": "ebc2b2be0a61080dfbb1913db4f30577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4235, "upload_time": "2019-04-18T09:43:04", "url": "https://files.pythonhosted.org/packages/25/4a/99f6fdf499754dbf10250ea3db468f0b7451cfa88016b7c3ee9a827d4abf/ramorm-0.0.11.tar.gz" } ] }