Я относительно новичок в Django, и я делаю форму, которую я подключаю к существующей базе данных MySQL.
Я пытаюсь создать обслуживание страница для стран. Одним из полей в моей базе данных является eu_member_state.
Здесь я пытаюсь создать флажок для этого поля, чтобы я мог снять его для Соединенного Королевства, недавно вышедшего из ЕС.
class CountryForm(forms.ModelForm):
class Meta():
model = Countries
fields = '__all__'
widgets = {
'eu_member_state': forms.CheckboxInput()
}
Флажок действительно появляется в моей форме, но как я могу сделать это в моей базе данных? Как этот флажок можно установить только в том случае, если значение базы данных равно «Y», и как мне записать это обратно в базу данных при сохранении, поэтому «Y», если установлен флажок, и «N», если флажок снят?
Это код модели:
from django.db import models
class Countries(models.Model):
country = models.CharField(unique=True, max_length=3)
descr = models.CharField(max_length=50, blank=True, null=True)
descrshort = models.CharField(max_length=20, blank=True, null=True)
country_2char = models.CharField(max_length=2, blank=True, null=True)
eu_member_state = models.CharField(max_length=1, blank=False, null=False, default='N')
class Meta:
db_table = 'countries'
verbose_name_plural = "countries"
def __str__(self):
return self.descr