从查询集中将不同的 CSS 类分配给 Django ModelChoiceField

Yax*_*Yax 5 python django

我不知道我是否在尝试不可能的事情,但我有来自 Django 的 forms.Form 的查询集的 HTML 选择选项States.objects.all()

模型

class Countries(models.Model):
    name = models.CharField(max_length=25)
Run Code Online (Sandbox Code Playgroud)

模型

class States(models.Model):
    country_id = models.ForeignKey('Countries')
    name = models.CharField(max_length=25)
Run Code Online (Sandbox Code Playgroud)

形式

class sign_up_form_school(forms.Form):
    states = forms.ModelChoiceField(
        queryset = States.objects.all(), 
        widget=forms.Select(attrs={
          'class': states.country_id.name #is this POSSIBLE?
          }))
Run Code Online (Sandbox Code Playgroud)

我希望每个选择选项值具有不同的类,就像我上面尝试过的那样,但它返回错误:name 'states' is not Define

Fla*_*ing 2

我认为这个答案也将回答您的问题:Django form field Choices,adding an attribute 您只需要添加类而不是标题并稍微更改渲染。

  • 不,事实并非如此。这与我想要实现的目标完全不同。 (2认同)