Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 如何使用混合类型选项创建嵌套字段?_Django_Form Fields - Fatal编程技术网

Django 如何使用混合类型选项创建嵌套字段?

Django 如何使用混合类型选项创建嵌套字段?,django,form-fields,Django,Form Fields,我正在制作一个网站来管理一些日程安排 我查了一下日历之类的东西,发现谷歌日历上的这个表格正是我想要的 问题是我很难弄清楚如何解决finalizaa字段。 我有一个提醒模型,但是。。。我是否应该为每个选项制作一个专栏,并播放表单小部件? 有什么罐装溶液可以使用吗?为什么不将这些列添加到您的模型中: finalize_type = models.CharField(choices=(('Never', ''), ('Repetitions', ''), ('Date', ''))) finalize

我正在制作一个网站来管理一些日程安排

我查了一下日历之类的东西,发现谷歌日历上的这个表格正是我想要的

问题是我很难弄清楚如何解决
finalizaa
字段。 我有一个
提醒
模型,但是。。。我是否应该为每个选项制作一个专栏,并播放表单小部件?
有什么罐装溶液可以使用吗?

为什么不将这些列添加到您的模型中:

finalize_type = models.CharField(choices=(('Never', ''), ('Repetitions', ''), ('Date', '')))
finalize_repetitions = models.IntegerField()
finalize_date = models.DateField()

# model clean!
def clean(self):
     if finalize_type == 'Repetitions':
          # check that there is number in finalize_repetitions
          # raise validation error if not
     elif finalize_type == 'Date':
          # check date on finalize_date

     # You should also check if date and repetions aren't set when type == 'Never'
如果我没记错的话,模型会在save上被清除。因此,如果您实现了一个ModelForm,它应该显示在表单错误上

我还将实现一个方法

@property
def next_event()
    """returns date of next repetition, None if finished"""
希望能有帮助