====================================
django app of an organization
====================================
Anorganization uses membership, and organization models to group users.
Support for Ariadne graphQL with pre-defined types and basic resolvers.
------------
Requirements
------------
* Python 3.10+
* django 4.0+
* pillow 9.4.0+
--------
Settings
--------
Store uploaded file with tokenize file name, default to False
* ANORGANIZATION_USE_TOKEN_FILENAME = True
-------------------
Django admin mixins
-------------------
Use predefined mixins to construct the admin class.
* OrganizationAdminMixin
* MembershipAdminMixin
.. code:: python
from django.contrib import admin
from anorganization.models import Organization
from anorganization.mixins import OrganizationAdminMixin
@admin.register(Organization)
class OrganizationAdmin(OrganizationAdminMixin, ModelAdmin):
...
---------------------------
Ariadne types and resolvers
---------------------------
Integrate predefined types and resolvers to scheme.
Requirements
------------
* ariadne 0.16.0+
* ariadne-relay 0.1.0a8+
**schema**
.. code:: python
from anorganization.graphqls import anorganization_schema
* anarticle/graphqls/article.graphql
* anarticle/graphqls/tag.graphql
**types**
.. code:: python
from anorganization.graphqls import anorganization_bindables
* anorganization
* anorganization_membership
**resolvers**
Async version
.. code:: python
from anorganization.graphqls import resolve_anorganization_instance, \
resolve_anorganization_member_connection, resolve_anorganizations
anorganization.set_instance_resolver(resolve_anorganization_instance)
anorganization.set_connection('members', resolve_anorganization_member_connection)
query.set_field('organizations', resolve_anorganizations)
* resolve_anorganization_instance
* resolve_anorganization_member_connection
* resolve_anorganization_membership_instance
* resolve_anorganizations
* resolve_anorganization_memberships
Sync version
* resolve_anorganization_instance_sync
* resolve_anorganization_member_connection_sync
* resolve_anorganization_membership_instance_sync
* resolve_anorganizations_sync
* resolve_anorganization_memberships_sync
-------
License
-------
django-anarticle is released under the terms of **Apache license**. Full details in LICENSE file.
Raw data
{
"_id": null,
"home_page": "",
"name": "django-anorganization",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "",
"keywords": "django,graphql,ariadne,aglean,organization,membership,role",
"author": "",
"author_email": "Chiu <chiutung.chen@aglean.com>",
"download_url": "https://files.pythonhosted.org/packages/2b/a8/36e4cab7d70a62275f712c82f63a57ac0974fccc5dec4efa4220184be241/django-anorganization-0.1.0rc3.tar.gz",
"platform": null,
"description": "====================================\ndjango app of an organization\n====================================\n\nAnorganization uses membership, and organization models to group users.\nSupport for Ariadne graphQL with pre-defined types and basic resolvers.\n\n------------\nRequirements\n------------\n\n* Python 3.10+\n* django 4.0+\n* pillow 9.4.0+\n\n--------\nSettings\n--------\nStore uploaded file with tokenize file name, default to False\n\n* ANORGANIZATION_USE_TOKEN_FILENAME = True\n\n-------------------\nDjango admin mixins\n-------------------\n\nUse predefined mixins to construct the admin class.\n\n* OrganizationAdminMixin\n* MembershipAdminMixin\n\n.. code:: python\n\n from django.contrib import admin\n\n from anorganization.models import Organization\n from anorganization.mixins import OrganizationAdminMixin\n\n\n @admin.register(Organization)\n class OrganizationAdmin(OrganizationAdminMixin, ModelAdmin):\n ...\n\n---------------------------\nAriadne types and resolvers\n---------------------------\n\nIntegrate predefined types and resolvers to scheme.\n\nRequirements\n------------\n\n* ariadne 0.16.0+\n* ariadne-relay 0.1.0a8+\n\n**schema**\n\n.. code:: python\n\n from anorganization.graphqls import anorganization_schema\n\n\n* anarticle/graphqls/article.graphql\n* anarticle/graphqls/tag.graphql\n\n**types**\n\n.. code:: python\n\n from anorganization.graphqls import anorganization_bindables\n\n\n* anorganization\n* anorganization_membership\n\n**resolvers**\n\nAsync version\n\n.. code:: python\n\n from anorganization.graphqls import resolve_anorganization_instance, \\\n resolve_anorganization_member_connection, resolve_anorganizations\n\n anorganization.set_instance_resolver(resolve_anorganization_instance)\n anorganization.set_connection('members', resolve_anorganization_member_connection)\n\n query.set_field('organizations', resolve_anorganizations)\n\n\n* resolve_anorganization_instance\n* resolve_anorganization_member_connection\n* resolve_anorganization_membership_instance\n* resolve_anorganizations\n* resolve_anorganization_memberships\n\nSync version\n\n* resolve_anorganization_instance_sync\n* resolve_anorganization_member_connection_sync\n* resolve_anorganization_membership_instance_sync\n* resolve_anorganizations_sync\n* resolve_anorganization_memberships_sync\n\n-------\nLicense\n-------\n\ndjango-anarticle is released under the terms of **Apache license**. Full details in LICENSE file.\n",
"bugtrack_url": null,
"license": "",
"summary": "django app for organizing users through memberships",
"version": "0.1.0rc3",
"project_urls": {
"Homepage": "https://github.com/aglean/django-anorganization"
},
"split_keywords": [
"django",
"graphql",
"ariadne",
"aglean",
"organization",
"membership",
"role"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "956639334f4d0d9685ca2db5ff083e66dcfdd346592df14ff69af4fe52b988dc",
"md5": "4237fe6408c8b6e82b6390ea2c95b6fc",
"sha256": "12e95f5442789011b2342ca4336ba352988222c0ef95ceefda97aaa00e6ecc72"
},
"downloads": -1,
"filename": "django_anorganization-0.1.0rc3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4237fe6408c8b6e82b6390ea2c95b6fc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 12780,
"upload_time": "2023-06-20T03:38:35",
"upload_time_iso_8601": "2023-06-20T03:38:35.470882Z",
"url": "https://files.pythonhosted.org/packages/95/66/39334f4d0d9685ca2db5ff083e66dcfdd346592df14ff69af4fe52b988dc/django_anorganization-0.1.0rc3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2ba836e4cab7d70a62275f712c82f63a57ac0974fccc5dec4efa4220184be241",
"md5": "01ca1e47efdde0afb1d8d347975f8ce3",
"sha256": "c55ddd72fe9ca2c6f488bd2248a03ed8369b8b0075179291c22c81b995f0174f"
},
"downloads": -1,
"filename": "django-anorganization-0.1.0rc3.tar.gz",
"has_sig": false,
"md5_digest": "01ca1e47efdde0afb1d8d347975f8ce3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 10521,
"upload_time": "2023-06-20T03:38:37",
"upload_time_iso_8601": "2023-06-20T03:38:37.514641Z",
"url": "https://files.pythonhosted.org/packages/2b/a8/36e4cab7d70a62275f712c82f63a57ac0974fccc5dec4efa4220184be241/django-anorganization-0.1.0rc3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-20 03:38:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "aglean",
"github_project": "django-anorganization",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "django-anorganization"
}