{ "info": { "author": "Lenar Imamutdinov", "author_email": "lenar.imamutdinov@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# Lagring: asset storage for Flask\n\n\n## Requirements\n\n- SQLAlchemy\n- Flask\n- PostgreSQL 9.4+\n\n## Installation\n\n pip install lagring\n\nIf you want to use `ImageAsset` class you have to install Pillow as well.\n\n## How to use it\n\n0. Configure your Flask app to have necessary config options:\n\n Parameter | Meaning\n -------------------|--------------------------------------------------\n ASSET_STORAGE_ROOT | Path to the directory where assets will be stored\n ASSET_URL_ROOT | Asset URL invariable part\n\n1. Create storage instance:\n\n ```python\n from lagring import FlaskLagring\n\n storage = FlaskLagring()\n storage.init_app(app)\n ```\n\n2. Derive your SQLAlchemy model from `storage.Entity` class:\n\n ```python\n from lagring import Asset\n\n class File(db.Model, storage.Entity):\n id = db.Column(db.Integer, primary_key=True)\n file = Asset()\n ```\n\n Note that JSONB field `_assets` will be added to the model (PostgreSQL 9.4+).\n You can change the name by overriding `lagring.Entity.asset_data_field` method.\n\n3. Put something to that asset field:\n\n ```python\n new_file = File()\n db.session.add(new_file)\n db.session.flush()\n new_file.file = '/some/local/path/filename'\n db.session.commit()\n ```\n\n The model instance must have a valid id on asset assignment, so you have to call `flush()`\n before that.\n\n4. Then you can use the asset like this:\n\n ```python\n # get asset URL\n url = new_file.file.url\n # get asset path\n path = new_file.file.abs_path\n # delete the asset\n del new_file.file\n ```\n\n5. Besides the basic `Asset` class, there are also `ImageAsset` and `DirectoryAsset` to store\nsomething more specific and have some processing on upload (no docs for that yet, please see\nthe code).", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/neoden/lagring", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "Lagring", "package_url": "https://pypi.org/project/Lagring/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/Lagring/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/neoden/lagring" }, "release_url": "https://pypi.org/project/Lagring/0.2.7.1/", "requires_dist": null, "requires_python": null, "summary": "Asset storage for Flask", "version": "0.2.7.1" }, "last_serial": 2238084, "releases": { "0.1.0": [], "0.1.1": [ { "comment_text": "", "digests": { "md5": "edcb6ba7e4c30a20e2f0747332e8eaff", "sha256": "30854d0148bbcd497f106d145e0d77e5777eaace16c10dbb7735f1931504e0b8" }, "downloads": -1, "filename": "Lagring-0.1.1.tar.gz", "has_sig": false, "md5_digest": "edcb6ba7e4c30a20e2f0747332e8eaff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5135, "upload_time": "2016-05-26T12:21:03", "url": "https://files.pythonhosted.org/packages/ed/46/d82d23601c6d9a2fe4515dda2aeaeb1806285d9f1d00da4f35ce2f51a312/Lagring-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "96d091cfe3030de77cad49a10afd84ae", "sha256": "923ee01b30b47ad4db40b446b70f8743a03692c7e057b19bf160dd5a21089221" }, "downloads": -1, "filename": "Lagring-0.1.2.tar.gz", "has_sig": false, "md5_digest": "96d091cfe3030de77cad49a10afd84ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5137, "upload_time": "2016-05-26T12:36:55", "url": "https://files.pythonhosted.org/packages/fc/ca/30a07388306e0d54d63afde4aab63bedff19dd351c42c4236c8ab8d39157/Lagring-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "bacef5db682f6b4c30954dcc9bffeb03", "sha256": "51a2a5005f1ffa6f683410debc268b153764143bd7064a671ff7d853a1c5e752" }, "downloads": -1, "filename": "Lagring-0.1.3.tar.gz", "has_sig": false, "md5_digest": "bacef5db682f6b4c30954dcc9bffeb03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7099, "upload_time": "2016-05-26T12:44:03", "url": "https://files.pythonhosted.org/packages/a1/1e/331f9ffd19288e1e3e55437f714586bbddb0849e76c8391b6b4778a4f41a/Lagring-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "a852dd900173b71293912a0546d512cc", "sha256": "8583b84c8f94b5066e8960ef558af076ceff5aea8ca6768975b0013f540333ae" }, "downloads": -1, "filename": "Lagring-0.1.4.tar.gz", "has_sig": false, "md5_digest": "a852dd900173b71293912a0546d512cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7102, "upload_time": "2016-05-26T12:47:04", "url": "https://files.pythonhosted.org/packages/95/5c/bc67178116e5cecdfd7a2c74142b38722c68cee8984f4f69850901c720f4/Lagring-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "f339c396a7ea248df930a4f2bcb42706", "sha256": "c09d176c36a71a56276ae57e922763eb4d6d8b7d8cdba9ca300b9c17cda5c0a4" }, "downloads": -1, "filename": "Lagring-0.1.5.tar.gz", "has_sig": false, "md5_digest": "f339c396a7ea248df930a4f2bcb42706", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7109, "upload_time": "2016-05-26T12:57:45", "url": "https://files.pythonhosted.org/packages/1f/91/f64d142179688956bf23dafc95130b1b1c1ab052f21871a0640abe335115/Lagring-0.1.5.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "60a1cb94321933673490fd0afc6c1e63", "sha256": "9b2fedaf57fab78992af1d39f26fcb9791c102e315084eef91ecf246822f217a" }, "downloads": -1, "filename": "Lagring-0.2.0.tar.gz", "has_sig": false, "md5_digest": "60a1cb94321933673490fd0afc6c1e63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8638, "upload_time": "2016-07-20T11:23:13", "url": "https://files.pythonhosted.org/packages/70/ab/94574bc7d5ba837eba7be4360a080e9b6bd283d8b54beeb7fc4cfe3e569a/Lagring-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "09ecea5002337b57ed3506cbc5559d4c", "sha256": "6659118122cbf601634b6f9681f5458a5d0e0d6dc12312826abdd77fd9d9b814" }, "downloads": -1, "filename": "Lagring-0.2.1.tar.gz", "has_sig": false, "md5_digest": "09ecea5002337b57ed3506cbc5559d4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8698, "upload_time": "2016-07-21T14:46:53", "url": "https://files.pythonhosted.org/packages/ac/a1/f12adeef9692007066ef2dfeb18f0449504f0d1a2eeb98793b9069ed379c/Lagring-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "689a1fae233b42728f679abbf5a94cbc", "sha256": "de8fc6c1bb8f46dff3e330eb354d11320196f09e7fea2bf8d525984037c67fc2" }, "downloads": -1, "filename": "Lagring-0.2.2.tar.gz", "has_sig": false, "md5_digest": "689a1fae233b42728f679abbf5a94cbc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8704, "upload_time": "2016-07-22T07:15:00", "url": "https://files.pythonhosted.org/packages/a5/45/15bd5f487a6bb13bb791746d335ddd2095aa129bb97dc4095ee4b9036726/Lagring-0.2.2.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "463d4f83bcc6db270cb6ad1de9f7918f", "sha256": "96790c5741c9bafa5fc9dd1b6c44f00945d38bfd0a412fdf6e81218cfe531778" }, "downloads": -1, "filename": "Lagring-0.2.4.tar.gz", "has_sig": false, "md5_digest": "463d4f83bcc6db270cb6ad1de9f7918f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9472, "upload_time": "2016-07-22T12:19:41", "url": "https://files.pythonhosted.org/packages/6e/ef/beeeb136949df57d5b2229d01ffae25a1642c2de743cdf2a08834aa599cd/Lagring-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "18deddeb177a11199c80fbf7b7670aee", "sha256": "1fc822711ce0ce7692f846e16f0c8d2f959f48e8b51724907ec49e3591189b6e" }, "downloads": -1, "filename": "Lagring-0.2.5.tar.gz", "has_sig": false, "md5_digest": "18deddeb177a11199c80fbf7b7670aee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9476, "upload_time": "2016-07-22T12:23:27", "url": "https://files.pythonhosted.org/packages/18/cc/4c13fd484fb573ab188cf1afa41381731ef64cdbdfc58fac671f8344b8ce/Lagring-0.2.5.tar.gz" } ], "0.2.6.2": [ { "comment_text": "", "digests": { "md5": "ab7dea261f59f866a98c03826a379b62", "sha256": "742dd085bb52b34d8932e57ece77f6174893094673a3a5827135ddafe4e38a30" }, "downloads": -1, "filename": "Lagring-0.2.6.2.tar.gz", "has_sig": false, "md5_digest": "ab7dea261f59f866a98c03826a379b62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9690, "upload_time": "2016-07-22T12:41:37", "url": "https://files.pythonhosted.org/packages/0f/e7/aaaf91f1e3e3cb079d0d4fc1040bb876279bd396ca1a0b99f48642adc17f/Lagring-0.2.6.2.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "56a3bbc740dd827e2c5f72329219e6b3", "sha256": "accab814950110deb1431ac1db6edcf5179619e7ae1136a20b2247eca2b778cf" }, "downloads": -1, "filename": "Lagring-0.2.7.tar.gz", "has_sig": false, "md5_digest": "56a3bbc740dd827e2c5f72329219e6b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9679, "upload_time": "2016-07-22T13:20:25", "url": "https://files.pythonhosted.org/packages/57/73/2abec22aca678b10ac098f11e736aefdde7704efa88ea3a12269bd27f5af/Lagring-0.2.7.tar.gz" } ], "0.2.7.1": [ { "comment_text": "", "digests": { "md5": "430ee7014c81b40e6974af83d357bab8", "sha256": "e38ceae74c8a2d11489a783af08662a2a032ebebdda1b9bc0fef9b4e6d301b43" }, "downloads": -1, "filename": "Lagring-0.2.7.1.tar.gz", "has_sig": false, "md5_digest": "430ee7014c81b40e6974af83d357bab8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9788, "upload_time": "2016-07-22T14:15:11", "url": "https://files.pythonhosted.org/packages/d6/d4/82619decac24ea683ae1ab8322dc0607d05484d568ba02916fb2e9e0a8f5/Lagring-0.2.7.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "430ee7014c81b40e6974af83d357bab8", "sha256": "e38ceae74c8a2d11489a783af08662a2a032ebebdda1b9bc0fef9b4e6d301b43" }, "downloads": -1, "filename": "Lagring-0.2.7.1.tar.gz", "has_sig": false, "md5_digest": "430ee7014c81b40e6974af83d357bab8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9788, "upload_time": "2016-07-22T14:15:11", "url": "https://files.pythonhosted.org/packages/d6/d4/82619decac24ea683ae1ab8322dc0607d05484d568ba02916fb2e9e0a8f5/Lagring-0.2.7.1.tar.gz" } ] }