{ "info": { "author": "Simon Welker", "author_email": "simon@serioese.gmbh", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "========================\nSerious Django: Graphene\n========================\n\nhttps://github.com/serioeseGmbH/serious-django-graphene\n\nserious-django-graphene offers a couple of extensions for Graphene development in Django.\n\n1. ``get_user_from_info`` returns the request's user from the passed info object.\n\n We use this function all the time, for example, to do permission checks on the current user.\n\n2. ``FormMutation`` is based on ``FailableMutation`` (see below).\n\n It defines a Graphene mutation based on a plain old Django form. What is this good for?\n Well, we want to employ the builtin capabilities of Django for input validation and\n conversion. Why reinvent the wheel to do checks like \"string of max length 50\" inside\n Graphene mutations when Forms can do that for you, and have extensible validators?\n\n This is essentially a cleaned up and changed version of the FormMutation delivered with\n graphene-django itself. The difference is mainly in how we model the returned data in an\n expectable pattern, see FailableMutation.\n\n2. ``FailableMutation`` defines a mutation that contains:\n\n - A ``success`` boolean flag\n - An ``error`` value, present only if an error occurred, which is (a union of) either\n\n - A list of ``ValidationError`` in the format like Django returns for validation errors, or\n - An ``ExecutionError``, which just contains an ``error_message`` String.\n\nIf you need additional fields, add them by inheriting from ``FailableMutation``.\n\n3. ``make_failable_objecttype`` turns an existing graphene.ObjectType into a Field that contains:\n\n - A ``result`` field which is an optional value of the original type\n - A ``error`` field which is an optional String value, present only if an error occurred\n - A ``success`` boolean flag field. Strictly seen, this is superfluous, as the `null`-ness of\n ``result`` or ``error`` can be checked. However, its existence improves semantics on the\n client, as they can now just check ``if(result.success) { ... }``.\n\n\nQuick start\n-----------\n\n1. Install the package with pip::\n\n pip install serious-django-graphene\n\n2. Add \"serious_django_graphene\" to your INSTALLED_APPS setting like this::\n\n INSTALLED_APPS = [\n ...\n 'serious_django_graphene',\n ]\n\n3. Import and use ``serious_django_graphene`` wherever you need the Graphene extensions\n\n4. Import and use ``serious_django_graphene.testing`` wherever you need the Graphene test extensions", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://serioese.gmbh/", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "serious-django-graphene", "package_url": "https://pypi.org/project/serious-django-graphene/", "platform": "", "project_url": "https://pypi.org/project/serious-django-graphene/", "project_urls": { "Homepage": "https://serioese.gmbh/" }, "release_url": "https://pypi.org/project/serious-django-graphene/0.5.1/", "requires_dist": null, "requires_python": "", "summary": "An extension for django-graphene.", "version": "0.5.1" }, "last_serial": 5849306, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "7485960cdc9ec43cce77d722dd27d3fb", "sha256": "b0ffdeee65d2c2a907c2b3b4e2513724c1633c80cc9aba4a9e64dca9d0b42803" }, "downloads": -1, "filename": "serious_django_graphene-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7485960cdc9ec43cce77d722dd27d3fb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6529, "upload_time": "2018-12-14T15:18:51", "url": "https://files.pythonhosted.org/packages/be/35/a4f554e72c5ef2e5dea174242fbd3aba4bf6f2509e9ef824e196bec5843e/serious_django_graphene-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1bb568977be0aec1545b8b5f1d6d3246", "sha256": "a60cc8ac798cd13117eba11afe30e61ce3ed9bba9a450079860abdfb6428b1db" }, "downloads": -1, "filename": "serious-django-graphene-0.1.tar.gz", "has_sig": false, "md5_digest": "1bb568977be0aec1545b8b5f1d6d3246", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5914, "upload_time": "2018-12-14T15:18:53", "url": "https://files.pythonhosted.org/packages/11/b4/8578f624425f1f72d20aabe643e55d12064e309fe31102ec3b42a15db8af/serious-django-graphene-0.1.tar.gz" } ], "0.1.post1": [ { "comment_text": "", "digests": { "md5": "506b45da8b880cc5a39bc5e59f6bcdb6", "sha256": "9b63331aa36b505dcaa2a9fd25861c8e52da99e793100250e0c4a67e3fb34091" }, "downloads": -1, "filename": "serious-django-graphene-0.1.post1.tar.gz", "has_sig": false, "md5_digest": "506b45da8b880cc5a39bc5e59f6bcdb6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5982, "upload_time": "2018-12-21T16:55:43", "url": "https://files.pythonhosted.org/packages/91/67/e642b5b86ec95c36c532a1fea55b0563f529ef07e656309ecf4f6ea258ee/serious-django-graphene-0.1.post1.tar.gz" } ], "0.1.post2": [ { "comment_text": "", "digests": { "md5": "a2095e77455882cedfab45a6b70c450d", "sha256": "93b4d563ebc40d14bb513bb0361f4106739da0b9fa5df58cd3a53c8aa58fdcd1" }, "downloads": -1, "filename": "serious-django-graphene-0.1.post2.tar.gz", "has_sig": false, "md5_digest": "a2095e77455882cedfab45a6b70c450d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5981, "upload_time": "2018-12-21T17:10:44", "url": "https://files.pythonhosted.org/packages/de/76/3b9b70a2a5fd06cb9910a8a27406237b05fe78ae153a5769d37f4519bca9/serious-django-graphene-0.1.post2.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "eb6189b6e39896a5fc37ebd54a8dc793", "sha256": "879d7a03d906519bbf9189b305a02c76bfd080e2a696e5dcb16804357fad4f48" }, "downloads": -1, "filename": "serious-django-graphene-0.2.tar.gz", "has_sig": false, "md5_digest": "eb6189b6e39896a5fc37ebd54a8dc793", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6004, "upload_time": "2019-04-11T13:45:05", "url": "https://files.pythonhosted.org/packages/fb/cc/aeb3189d0e53cdb6b446c99d24151ffce3abb3cda2acbaea28ecd28a156d/serious-django-graphene-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "8ef8959c15a0f07339a976f5c110f98a", "sha256": "ef68a1670d94c3b8881437143f7501578c8f203dd6014257288240902744dedd" }, "downloads": -1, "filename": "serious-django-graphene-0.3.tar.gz", "has_sig": false, "md5_digest": "8ef8959c15a0f07339a976f5c110f98a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6026, "upload_time": "2019-04-11T15:51:30", "url": "https://files.pythonhosted.org/packages/00/40/0adbe5a58c4e11ed7afb4078f993d2eb699e4f4cb800d1c8d11335d74892/serious-django-graphene-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "caab8d793269516d7b2d1fb40291ed82", "sha256": "f570cd5d5dae4532c85856a53e367734b3ea73a759f27e56a94db0946a9c972e" }, "downloads": -1, "filename": "serious-django-graphene-0.4.tar.gz", "has_sig": false, "md5_digest": "caab8d793269516d7b2d1fb40291ed82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7311, "upload_time": "2019-08-20T08:23:11", "url": "https://files.pythonhosted.org/packages/86/7d/2226348d7c0e249ed4380dd366873ee048744043161a9cee6d266fd3a434/serious-django-graphene-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "6f6476fb379bf9534ac6e47d28dbecf9", "sha256": "073cb6dd39fafbf92374d7c54f6317f96823b0bd31d022646eb0bedb8972a77a" }, "downloads": -1, "filename": "serious-django-graphene-0.4.1.tar.gz", "has_sig": false, "md5_digest": "6f6476fb379bf9534ac6e47d28dbecf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7310, "upload_time": "2019-08-20T08:24:56", "url": "https://files.pythonhosted.org/packages/ea/b1/9a06c26d49225046899ba3a649e3e9d7226187029292d3f3d9fc6e3ba7e9/serious-django-graphene-0.4.1.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "838c58b1bbe09cbfcdf8d7724efde239", "sha256": "89207d08c9be21cbb52ddfc77e76e03f9db321c1030dba0f98c51ae84506b044" }, "downloads": -1, "filename": "serious-django-graphene-0.5.tar.gz", "has_sig": false, "md5_digest": "838c58b1bbe09cbfcdf8d7724efde239", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7312, "upload_time": "2019-09-18T10:24:23", "url": "https://files.pythonhosted.org/packages/38/ca/f8d65a5d010507bb3499d5af728444e4fa0f03aa77c194224372f624eae2/serious-django-graphene-0.5.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "8d4bc5e1953d8b44726133320d3c6425", "sha256": "e5c32cb32524f46d16500c16d2870bd4ba551995f65a25e0e7e0eb508e8c2b3e" }, "downloads": -1, "filename": "serious-django-graphene-0.5.1.tar.gz", "has_sig": false, "md5_digest": "8d4bc5e1953d8b44726133320d3c6425", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7304, "upload_time": "2019-09-18T10:53:59", "url": "https://files.pythonhosted.org/packages/cf/44/7eed64897cffe1ff0a01ae0d43979ef6d4411935d6aee7bab52fd544bd23/serious-django-graphene-0.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8d4bc5e1953d8b44726133320d3c6425", "sha256": "e5c32cb32524f46d16500c16d2870bd4ba551995f65a25e0e7e0eb508e8c2b3e" }, "downloads": -1, "filename": "serious-django-graphene-0.5.1.tar.gz", "has_sig": false, "md5_digest": "8d4bc5e1953d8b44726133320d3c6425", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7304, "upload_time": "2019-09-18T10:53:59", "url": "https://files.pythonhosted.org/packages/cf/44/7eed64897cffe1ff0a01ae0d43979ef6d4411935d6aee7bab52fd544bd23/serious-django-graphene-0.5.1.tar.gz" } ] }