Skip to main content

Display toggle switch in stead of checkbox for BooleanField in django admin site.

Project description

django-toggle-switch-widget

Display toggle switch in stead of checkbox for BooleanField in django admin site.

Install

pip install django-toggle-switch-widget

Widget init parameters

  • attrs: Inherit from CheckboxInput.
  • check_test: Inherit from CheckboxInput.
  • round: Default to False. If round=True, display round switch. If round=False, display squire switch.
  • klass: Default to empty string "". Pre-setted klass are:
    • django-toggle-switch-success: Show success color (green, #06ad3d) while toggle on.
    • django-toggle-switch-warning: Show warning color (orange, #ff6a00) while toggle on.
    • django-toggle-switch-danger: Show danger color (red, #ba2121) while toggle on.
    • django-toggle-switch-dark-primary: Show dark primary color (darkcyan, #417690) while toggle on.
    • django-toggle-switch-primary: Show primary color (cadetblue, #79aec8) while toggle on.

Usage

pro/settings.py

INSTALLED_APPS = [
    ...
    'django_toggle_switch_widget',
    ...
]

app/model.py

from django.db import models

class TestModel(models.Model):
    title = models.CharField(max_length=64, help_text="Please input model title.")
    published = models.BooleanField(verbose_name="Is this test model published.")
    is_demo = models.BooleanField(help_text="Is this a demo test model?")

app/admin.py

from django.contrib import admin
from django.forms import ModelForm
from django_toggle_switch_widget.widgets import DjangoToggleSwitchWidget
from .models import TestModel

class TestModelForm(ModelForm):
    class Meta:
        model = TestModel
        fields = "__all__"
        widgets = {
            "published": DjangoToggleSwitchWidget(klass="django-toggle-switch-dark-primary"),
            "is_demo": DjangoToggleSwitchWidget(round=True, klass="django-toggle-switch-success"),
        }

class TestModeldmin(admin.ModelAdmin):
    form = TestModelForm

admin.site.register(TestModel, TestModeldmin)

Tips

  • It's better to use together with django-checkbox-normalize app.

Release

v0.1.0 2020/03/02

  • First release.

v0.1.1 2020/09/09

  • Add License.

v0.1.3 2023/09/15

  • Doc update.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-toggle-switch-widget-0.1.3.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file django-toggle-switch-widget-0.1.3.tar.gz.

File metadata

File hashes

Hashes for django-toggle-switch-widget-0.1.3.tar.gz
Algorithm Hash digest
SHA256 9dceacf68e02b572a4ae7256c3af0f752fa10c2779ceded8a7cbfc28000f2641
MD5 28a7045cb67d071575fbd81498a2767f
BLAKE2b-256 8af1792c33c89883bafc7156a4ff8da1524c3fa31c0a6a4f3e41277d9e931fdd

See more details on using hashes here.

File details

Details for the file django_toggle_switch_widget-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for django_toggle_switch_widget-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9c69b4de58424a2ea326fa8d34acd31fda2d496bc077ae9196177708c5204a38
MD5 2bc701a3c88a31f5cf625228395afae2
BLAKE2b-256 a1685c7a46ddeeba1c2983b0f463c08795e9bd30bfa33d3d976ca9b64f6debc6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page