{ "info": { "author": "Jeremy Epstein", "author_email": "jazepstein@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3" ], "description": "flask-admin-s3-upload\n=====================\n\nField types for allowing file and image uploads to Amazon S3 (as well as default local storage) in Flask-Admin.\n\n\nExample\n-------\n\nFor a complete, working Flask app that demonstrates flask-admin-s3-upload in action, have a look at `flask-s3-save-example `_.\n\n\nUsage\n-----\n\nUse with a Flask-Admin ModelView by overriding field types, and by passing in special arguments to those fields:\n\n.. code-block:: python\n\n from flask.ext.admin.contrib.sqla import ModelView\n\n class MyView(ModelView):\n form_overrides = dict(\n some_image=S3ImageUploadField,\n some_file=S3FileUploadField)\n\n form_args = dict(\n some_image=dict(\n base_path='/some/folder/static',\n relative_path='some_image/',\n url_relative_path='uploads/',\n namegen=your_namegen_func_here,\n storage_type_field='some_image_storage_type',\n bucket_name_field='some_image_storage_bucket_name',\n ),\n some_file=dict(\n base_path='/some/folder/static',\n relative_path='some_file/',\n namegen=your_namegen_func_here,\n allowed_extensions=('pdf', 'txt'),\n storage_type_field='some_file_storage_type',\n bucket_name_field='some_file_storage_bucket_name',\n ))\n\n def scaffold_form(self):\n # Note: assuming that we have Flask-S3 config values to pass\n # to fields below. Flask-S3 is not required, you can pass\n # values from elsewhere if you want.\n from flask import current_app as app\n\n form_class = super(MyView, self).scaffold_form()\n static_root_parent = '/some/folder'\n\n if app.config['USE_S3']:\n form_class.some_image.kwargs['storage_type'] = 's3'\n form_class.some_file.kwargs['storage_type'] = 's3'\n\n form_class.some_image.kwargs['bucket_name'] = app.config['S3_BUCKET_NAME']\n form_class.some_image.kwargs['access_key_id'] = app.config['AWS_ACCESS_KEY_ID']\n form_class.some_image.kwargs['access_key_secret'] = app.config['AWS_SECRET_ACCESS_KEY']\n form_class.some_image.kwargs['static_root_parent'] = static_root_parent\n\n form_class.some_file.kwargs['bucket_name'] = app.config['S3_BUCKET_NAME']\n form_class.some_file.kwargs['access_key_id'] = app.config['AWS_ACCESS_KEY_ID']\n form_class.some_file.kwargs['access_key_secret'] = app.config['AWS_SECRET_ACCESS_KEY']\n form_class.some_file.kwargs['static_root_parent'] = static_root_parent\n\n return form_class\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Jaza/flask-admin-s3-upload", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "flask-admin-s3-upload", "package_url": "https://pypi.org/project/flask-admin-s3-upload/", "platform": "any", "project_url": "https://pypi.org/project/flask-admin-s3-upload/", "project_urls": { "Homepage": "https://github.com/Jaza/flask-admin-s3-upload" }, "release_url": "https://pypi.org/project/flask-admin-s3-upload/0.1.4/", "requires_dist": [ "Flask-Admin", "boto", "url-for-s3" ], "requires_python": "", "summary": "Field types for allowing file and image uploads to Amazon S3 (as well as default local storage) in Flask-Admin.", "version": "0.1.4" }, "last_serial": 2297323, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "9c406c8f70256fbd28d382f53f5c271e", "sha256": "abd294e51d7c51d57f9513774e29d60edb3ee81bff8547d6bd318f009042274f" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9c406c8f70256fbd28d382f53f5c271e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5194, "upload_time": "2015-04-02T01:36:33", "url": "https://files.pythonhosted.org/packages/69/84/3ee88942d835b19c1f4d08875b3890c1abecebeac330a80b2703fbcc18f5/flask_admin_s3_upload-0.1.0-py2.py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "74592aedd9b53a85fe386c4fa4286cae", "sha256": "855219b10adf08354e99f0cb98baa9018b764940eb8f0c8cddcd6598d78a4f5e" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "74592aedd9b53a85fe386c4fa4286cae", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6499, "upload_time": "2015-04-02T02:06:05", "url": "https://files.pythonhosted.org/packages/47/11/d82c202d179356b490705530a6957d98a54e913ae4ee830b7979b78f2fd5/flask_admin_s3_upload-0.1.1-py2.py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "191c404b1c0be5288556d2f561468337", "sha256": "b1abe1c18851b83165419243eadb9fdc353607d23e4eec39b5190390ebf0e869" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "191c404b1c0be5288556d2f561468337", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6727, "upload_time": "2015-08-27T23:54:41", "url": "https://files.pythonhosted.org/packages/4b/00/d8c299fa76a3f5217db6f9847ca4bc0e99352f692d23f0ad2b601a1128b0/flask_admin_s3_upload-0.1.2-py2.py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "0214f2056d45aaf1f39f1537f8981e28", "sha256": "a781999af6feef5fd960459f0193cfeddc50d1850d5ba5630550fd3755c2bee4" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0214f2056d45aaf1f39f1537f8981e28", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6724, "upload_time": "2015-08-28T00:05:13", "url": "https://files.pythonhosted.org/packages/93/d2/20c3b052f19c4a398f33e9a00aa61181d1848b2bf3010e99ffe3f161aadb/flask_admin_s3_upload-0.1.3-py2.py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "f336b172aae73adf50493e79bf277e86", "sha256": "7e38620dc84eaba2a21c8d1ec67acca1d4ab953d80c62c2c76733a18e2cda959" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f336b172aae73adf50493e79bf277e86", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6735, "upload_time": "2016-08-23T07:25:49", "url": "https://files.pythonhosted.org/packages/77/69/1c10570cd2908513baaa640524f5c67420bbd7cb3d672efed88418803cb6/flask_admin_s3_upload-0.1.4-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f336b172aae73adf50493e79bf277e86", "sha256": "7e38620dc84eaba2a21c8d1ec67acca1d4ab953d80c62c2c76733a18e2cda959" }, "downloads": -1, "filename": "flask_admin_s3_upload-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f336b172aae73adf50493e79bf277e86", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6735, "upload_time": "2016-08-23T07:25:49", "url": "https://files.pythonhosted.org/packages/77/69/1c10570cd2908513baaa640524f5c67420bbd7cb3d672efed88418803cb6/flask_admin_s3_upload-0.1.4-py2.py3-none-any.whl" } ] }