Lors de l'implémentation d'un formulaire qui hérite de ModelForm, lorsque forms.RadioSelect
est appliqué en tant que widget au champ ForeignKey, l'élément lorsqu'il n'est pas sélectionné est" --------- "comme indiqué dans la figure ci-dessous. Il est affiché et j'ai pensé que c'était un peu étrange en termes d'interface utilisateur, c'est donc la méthode lorsque je l'ai changé.
forms.Select
sans appliquer de widget," --------- "est normal.models.py
# -*-coding: utf-8-*-
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=30)
def __unicode__(self):
return self.name
class Article(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author)
forms.py
# -*-coding: utf-8-*-
from django import forms
from django.forms import ModelForm
from .models import Article, Author
class ArticleForm(ModelForm):
class Meta:
model = Article
fields = '__all__'
author = forms.ModelChoiceField(
queryset=Author.objects.all(),
widget=forms.RadioSelect,
empty_label='N'est pas applicable'
)
C'est OK si vous passez une chaîne de caractères arbitraire à forms.ModelChoiceField
avec empty_label.
author = forms.ModelChoiceField(
queryset=Author.objects.all(),
widget=forms.RadioSelect,
empty_label='N'est pas applicable'
)
Recommended Posts