{"id":15009301,"url":"https://github.com/sinkler/django-radiogrid","last_synced_at":"2025-04-09T17:23:41.857Z","repository":{"id":41403797,"uuid":"39635514","full_name":"Sinkler/django-radiogrid","owner":"Sinkler","description":"Django radio grid field","archived":false,"fork":false,"pushed_at":"2022-07-01T20:45:33.000Z","size":66,"stargazers_count":31,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-07T11:23:45.038Z","etag":null,"topics":["django","django-plugin","django17","django22","django32","django4","form-fields","python","python27","python310","python36","python37","python38","python39","radio-buttons"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sinkler.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":null,"funding":null,"license":"COPYING.LGPLv3","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-24T13:33:08.000Z","updated_at":"2024-01-05T17:17:26.000Z","dependencies_parsed_at":"2022-08-25T13:30:46.216Z","dependency_job_id":null,"html_url":"https://github.com/Sinkler/django-radiogrid","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinkler%2Fdjango-radiogrid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinkler%2Fdjango-radiogrid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinkler%2Fdjango-radiogrid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sinkler%2Fdjango-radiogrid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sinkler","download_url":"https://codeload.github.com/Sinkler/django-radiogrid/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248075439,"owners_count":21043589,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","django-plugin","django17","django22","django32","django4","form-fields","python","python27","python310","python36","python37","python38","python39","radio-buttons"],"created_at":"2024-09-24T19:24:20.552Z","updated_at":"2025-04-09T17:23:41.842Z","avatar_url":"https://github.com/Sinkler.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"django-radiogrid\n================\n\n.. image:: https://codecov.io/gh/Sinkler/django-radiogrid/branch/master/graph/badge.svg\n    :target: https://codecov.io/gh/Sinkler/django-radiogrid\n\n.. image:: https://codeclimate.com/github/Sinkler/django-radiogrid/badges/gpa.svg\n    :target: https://codeclimate.com/github/Sinkler/django-radiogrid\n\n.. image:: https://img.shields.io/pypi/l/django-radiogrid.svg\n    :target: https://pypi.python.org/pypi/django-radiogrid\n\n.. image:: https://img.shields.io/pypi/v/django-radiogrid.svg\n    :target: https://pypi.python.org/pypi/django-radiogrid\n\nWith this you can create a radio grid field:\n\n.. image:: screenshot.png\n    :target: screenshot.png\n\nInstallation\n============\n\n::\n\n    pip install django-radiogrid\n\nIn your settings.py\n-------------------\n\n::\n\n    INSTALLED_APPS = (\n\n        # ...\n\n        'radiogrid',\n    )\n\nIn your models.py\n-----------------\n\n::\n\n    from radiogrid import RadioGridField\n\n    # ...\n\n    ROWS = (\n        (1, 'First'),\n        (2, 'Second'),\n        (3, 'Third'),\n    )\n\n    VALUES = (\n        ('pyha', 'Pyha'),\n        ('work', 'Work'),\n        ('happy', 'Happy'),\n        ('food', 'Food'),\n    )\n\n    class MyModel(models.Model):\n\n        # ...\n\n        my_grid = RadioGridField(rows=ROWS, values=VALUES, require_all_fields=True)\n\nExample project\n===============\n\nYou can run it as usual:\n\n::\n\n    virtualenv venv\n    . venv/bin/activate\n    pip install django\n    pip install -e .\n    cd example\n    ./manage.py migrate\n    ./manage.py loaddata data\n    ./manage.py runserver\n    ./manage.py test\n\nor\n\n::\n\n    docker-compose up app\n    docker-compose run --rm app test\n\nDeveloping\n==========\n\nTesting\n-------\n\n::\n\n    docker-compose run --rm app test\n    docker-compose run --rm app coverage\n    docker-compose run --rm app tox -e py310-django-master\n\nReleasing\n---------\n\n- add a new version description in ``CHANGES.rst``\n- change a version in ``__init__.py``\n- add a github release\n- ``docker-compose run --rm app release``\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinkler%2Fdjango-radiogrid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsinkler%2Fdjango-radiogrid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsinkler%2Fdjango-radiogrid/lists"}