#一 导入自定义插件
1. forms
--widgets.py
# -*- coding:utf-8 -*-
from django.forms import RadioSelect
class ColorRadioSelect(RadioSelect):
template_name = 'widgets/color_radio/radio.html'
option_template_name = 'widgets/color_radio/radio_option.html'
2. templates
--widgets()
--color_redio
--redio.html
--radio_option.html
二 使用
from django import forms
from web import models
from utils.form_placeholder import form_placeholder
from django.core.exceptions import ValidationError
from web.forms.widgets import ColorRadioSelect
class add_project(form_placeholder, forms.ModelForm):
except_bootstrap_styles = ['color']
class Meta:
model = models.Project
fields = ['name', 'color', 'disc']
labels = {
'disc': '项目描述'
}
widgets = {
'disc': forms.Textarea(),
'color': ColorRadioSelect(attrs={'class': 'color-radio'})
}
def __init__(self, request, *args, **kwargs):
super(add_project, self).__init__(*args, **kwargs)
self.request = request