Javascript 只显示月份和年份的Django DateField日历?
在django管理面板中,我当前有一个DateField,显示了一个用于输入日期的漂亮Javascript日历。然而,我只对月份和年份感兴趣。所以我想知道日历是否可以只显示月份和年份。(如果您可以限制其使用,以便以后不能输入任何日期,则可额外获得布朗尼点数。) 有人问了一个类似的问题,但没有回答。最简单(也是最正确的,因为您只关心月份和年份)的方法是将模型字段分为两个字段:月份和年份。并将其存储起来 因此,我们没有:Javascript 只显示月份和年份的Django DateField日历?,javascript,django,calendar,django-admin,datefield,Javascript,Django,Calendar,Django Admin,Datefield,在django管理面板中,我当前有一个DateField,显示了一个用于输入日期的漂亮Javascript日历。然而,我只对月份和年份感兴趣。所以我想知道日历是否可以只显示月份和年份。(如果您可以限制其使用,以便以后不能输入任何日期,则可额外获得布朗尼点数。) 有人问了一个类似的问题,但没有回答。最简单(也是最正确的,因为您只关心月份和年份)的方法是将模型字段分为两个字段:月份和年份。并将其存储起来 因此,我们没有: class Blah(models.Model): ... y
class Blah(models.Model):
...
your_date = models.DateField()
你应该:
class Blah(models.Model):
MONTH_CHOICES=((1,"January"), (2,"February"), ...)
...
your_year = models.IntegerField()
your_month = models.IntegerField(choices=MONTH_CHOICES)
您可以在clean()
方法中实现限制未来年份甚至未来月份(年/月组合)所需的任何逻辑
编辑:我在上面的括号中说得最正确,因为您确实没有要存储的日期。您必须决定存储所选月份/年份的第一天、最后一天或任意一天
第二次编辑:关于选择一年中的一个月的javascript(请参见该页面中的“月选择日历”示例)。使用它,但正如我在上一次编辑中所说,你必须选择一天来处理