首页 > 解决方案 > django django-yearmonth-widget 将月份显示为月份名称

问题描述

我使用包“django-yearmonth-widget”来选择年份和月份,而不是完整的日期。在这里,日期是固定的,即每个月的第一天。此实现运行良好。

包裹:

pip install django-yearmonth-widget

我面临的问题是字段“ file_upload_datetime ”并描述如下

  1. 如何将月份显示为月份名称而不是数字
  2. 将选项 0 显示为 --Year-- 和 --Month-- 或类似 --Select--
  3. 为该字段提供适当的标签

形式

class FileUploadForm(forms.ModelForm):
    file = forms.FileField(required=True,widget=forms.ClearableFileInput(attrs={'multiple':True}), label='Select Files')
    file_remote = forms.FileField(widget=forms.ClearableFileInput(attrs={'multiple':True}), required=False)
    class Meta():
        model = FileUpload
        fields= ('file_upload_datetime','file','file_remote')
        widgets = {
            'file_upload_datetime': DjangoYearMonthWidget(),
            'file_remote':forms.HiddenInput()
        }

楷模

class FileUpload(models.Model):
    file = models.FileField(upload_to='files')
    file_remote = models.FileField(upload_to=RetailFormsConfig.remote_folder, storage=upload_storage, blank=True)
    file_upload_datetime = models.DateField()

在内部视图中,我访问月份和年份作为日期如下

file_upload_datetime = file_upload_form.cleaned_data['file_upload_datetime']

请参考下面的截图以供参考

在此处输入图像描述

在此处输入图像描述

标签: pythondjangodjango-viewsdjango-formsdjango-widget

解决方案


推荐阅读