forms.py
Date_Format = (
('0', ' dd / mm / yyyy'),
('1', 'mm / dd / yyyy'),
)
Time_Format = (
('0', ' 12 hour AM / PM '),
('1', ' 24 hour '),
)
class DateFormatForm(Form):
date_format = forms.ChoiceField(choices=Date_Format,widget=forms.RadioSelect())
class TimeFormatForm(Form):
time_format = forms.ChoiceField(choices=Time_Format,widget=forms.RadioSelect())
models.py
class Settings(models.Model):
user = models.ForeignKey(User, null=True)
date_format = models.CharField('Date format', max_length=100)
time_format = models.CharField('Time format', max_length=100)
我在模板中保留了两种形式,即DateFormatForm和TimeFormatForm,用于选择日期广告时间格式。
在模型中,它们是两个字段,即i.date_format和ii.time_format,为其创建表单选项。如果用户单击此格式('0','dd / mm / yyyy'),按保存,相应的值为“0”,应保存在date_format中。
3.所有日期格式都保存在“0”或“1”的相应字段中。
我无法使用表单表单验证并保存,因为我没有使用modelsForm,所以如何将其保存在数据库中。
请与我分享一个简单的想法,以表格形式执行此操作。
由于
答案 0 :(得分:1)
我认为您的模型可以重构,您应该使用Django ModelForm。
但是,如果您在代码中对它们进行了硬编码,为什么要在db中保存人类可读的部分?你想要它吗?
如果你想获得人类可读的部分,只需使用get_date_format_display()
表示DateFormat模型,get_time_format_display()
表示TimeFormat模型。 Django生成这些方法
请参阅此Documentation
希望这有助于增加价值