python - Django,ModelMultipleChoiceField 中的初始值仅设置为禁用

标签 python html css django django-forms

我有如下形式和模型。我正在使用 Django 1.6.4。我能够使用基于参数的默认检查选项创建多项选择字段:

self.fields["options"].initial

但是如何将这个选中的选项设置为禁用编辑,当我设置时,

self.fields["options"].widget.attrs['disabled']

它使所有字段都被禁用。是否可以在表单中处理它,或者我应该为它使用 CSS 样式。

class Option(models.Model):
    name = models.CharField(max_length=20, verbose_name="Name", unique=True)

class Device(models.Model):
    options = models.ManyToManyField(Option, null=True, blank=True)
    serial_number = models.CharField(max_length=20, verbose_name="Serial number", unique=True)

class EditDeviceForm(forms.Form):
      serial_number = forms.CharField(label="Serial number:")  
      options = forms.ModelMultipleChoiceField(label="Options:", 
                widget=forms.CheckboxSelectMultiple(),
                queryset=Option.objects.all()) 
      def __init__(self, *args, **kwargs):
                super(EditDeviceForm, self).__init__(*args, **kwargs)
                self.fields["options"].initial = Option.objects.filter(device__in = Device.objects.filter(serial_number=s_number))
                #self.fields["options"].widget.attrs['disabled'] = "disabled"

最佳答案

至于RadioSelect ,您可以在模板中遍历所有复选框并将一些特定数据应用于它。

关于python - Django,ModelMultipleChoiceField 中的初始值仅设置为禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28505732/

相关文章:

python - 根据特定的月份值和以另一列为条件过滤 Pandas 数据框

python - 使用 Pandas 查找两个不同大小的数据帧之间的不同行

html - 当相邻同级元素悬停时显示元素

javascript - 从被点击的元素image src中放入image src并更新数据

css - 如何从根据动态父 div 缩放的路径构建反向 svg 掩码

python - 停止 Mesa 服务器

python - (Python) 交替二叉树的输入?

javascript - 如何为 HTML 中的文件输入设置值?

javascript - 尝试使用 html 控制台获取元素的样式属性时出错

php - HTML/CSS 面板不通过 PHP 中的 JavaScript 显示