1

表格.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())

模型.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)
  1. 我在模板中保留了两个表格,即 DateFormatForm 和 TimeFormatForm ,用于选择日期广告时间格式。

  2. 在模型中,它们有两个字段,即 i.date_format 和 ii.time_format 为其创建表单选项。因此,如果用户单击此格式('0','dd / mm / yyyy'),然后按保存,则相应的值是“0”,应该以 date_format 保存。

3.因此日期格式以“0”或“1”保存在相应的字段中。

我不能使用表单表单验证和保存,因为我没有使用modelsForm,所以如何将它保存在数据库中。

请分享我一个小小的想法来执行这个没有形式。

谢谢

4

1 回答 1

1

我认为您的模型可以重构,您应该使用 Django ModelForm。

但是,如果您在代码中硬核化了人类可读的部分,为什么还要将它们保存在 db 中呢?你想得到它吗?

如果您想获得人类可读的部分,只需使用get_date_format_display()DateFormat 模型和get_time_format_display()TimeFormat 模型。Django 生成这些方法

看到这个文档

希望这有助于价值

于 2013-05-07T14:56:20.640 回答