加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

在django中自定义单选按钮

发布时间:2020-12-20 11:27:41 所属栏目:Python 来源:网络整理
导读:模板代码是 {{ form.incident_live }} forms.py INCIDENT_LIVE = ( ('0','Live'),('1','Test'),)class IncidentForm(forms.ModelForm): incident_live = forms.ChoiceField(widget=forms.RadioSelect(),choices=INCIDENT_LIVE) 上面的代码给我带有垂直顺序选
模板代码是

{{ form.incident_live }}

forms.py

INCIDENT_LIVE = (
    ('0','Live'),('1','Test'),)
class IncidentForm(forms.ModelForm):
     incident_live = forms.ChoiceField(widget=forms.RadioSelect(),choices=INCIDENT_LIVE)

上面的代码给我带有垂直顺序选项的单选按钮,但我希??望它是水平的,即等效的html将是< input type =“radio”name =“status”/> Live< input type = “radio”name =“status”checked =“checked”/>测试.

提前致谢

解决方法

听起来像是自定义窗口小部件渲染器的作业:

from django.utils.safestring import mark_safe

class HorizRadioRenderer(forms.RadioSelect.renderer):
    """ this overrides widget method to put radio buttons horizontally
        instead of vertically.
    """
    def render(self):
            """Outputs radios"""
            return mark_safe(u'n'.join([u'%sn' % w for w in self]))

class IncidentForm(forms.ModelForm):
     incident_live = forms.ChoiceField(widget=forms.RadioSelect(renderer=HorizRadioRenderer),choices=INCIDENT_LIVE)

取自https://wikis.utexas.edu/display/~bm6432/Django-Modifying+RadioSelect+Widget+to+have+horizontal+buttons

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读