首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在django中呈现没有ul的单选按钮

如何在django中呈现没有ul的单选按钮
EN

Stack Overflow用户
提问于 2013-05-13 20:56:18
回答 2查看 5.2K关注 0票数 7

forms.py

代码语言:javascript
代码运行次数:0
运行
复制
Date_Format = (
    ('0', ' dd / mm / yyyy'),
    ('1', 'mm / dd / yyyy'),
)    
Time_Format = (
    ('0', ' 12 hour AM / PM '),
    ('1', ' 24 hour '),
)
class SettingsForm(forms.ModelForm):
    date_format = forms.ChoiceField(widget=forms.RadioSelect(), choices=Date_Format)
    time_format = forms.ChoiceField(widget=forms.RadioSelect(), choices=Time_Format)

template.py

更新:

代码语言:javascript
代码运行次数:0
运行
复制
                    {% for radio in SettingsForm.date_format %}
                    {{ radio.choice_label }}
                    <div class="select">{{ radio.tag }}</div>
                    {% endfor %}

上面的表单将单选按钮呈现在一个无序列表中,但我希望不使用无序列表。我该如何执行此操作?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-13 21:23:49

您可以遍历模板中的RadioSelect

代码语言:javascript
代码运行次数:0
运行
复制
{% for choice in form.date_format %}
  {{ choice.choice_label }}
  <div class="select">{{ choice.tag }}</div> {# Or any other type you want. #}
{% endfor %}
票数 5
EN

Stack Overflow用户

发布于 2013-05-13 21:28:46

您可以创建自定义渲染器:

代码语言:javascript
代码运行次数:0
运行
复制
from django import forms
from django.forms.widgets import RadioFieldRenderer
from django.shortcuts import render
from django.utils.html import format_html_join
from django.utils.encoding import force_text


class RadioFieldWithoutULRenderer(RadioFieldRenderer):

    def render(self):
        return format_html_join(
            '\n',
            '<li>{0}</li>',
            [(force_text(w), ) for w in self],
        )


CHOICES = (
    ('0', ' 12 hour AM / PM '),
    ('1', ' 24 hour '),
)


class MyForm(forms.Form):
    somefield = forms.ChoiceField(
        widget=forms.RadioSelect(renderer=RadioFieldWithoutULRenderer),
        choices=CHOICES)


def myview(request):
    return render(request, 'form.html', {'form': MyForm()})
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16522612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档