【问题标题】:Django form. How hide colon from initial_text?Django 形式。如何从initial_text隐藏冒号?
【发布时间】:2017-01-28 21:33:33
【问题描述】:

我正在尝试这样做:

类 NoClearableFileInput(ClearableFileInput): 初始文本 = '' 输入文本 = '' 类 ImageUploadForm(forms.ModelForm): title = forms.CharField(label="TITLE", required=False,widget=forms.TextInput(attrs={'placeholder': 'name'}), label_suffix="") image = forms.ImageField(label='NEW FILE',widget=NoClearableFileInput, label_suffix="") 元类: 模型 = 图片 字段=('标题','图像')

在类 NoClearableFileInput 中有清理值 initial_text。 在 'title' 和 'image' 字段中使用 label_suffix,但从 initial_text 开始保留符号“:”。

result

如何去掉冒号?

【问题讨论】:

    标签: python django forms


    【解决方案1】:

    表单的__init__ 方法有label_suffix=":" 参数-https://docs.djangoproject.com/en/dev/ref/forms/api/#django.forms.Form.label_suffix 因此,要从标签中删除尾随冒号,您可以在视图中初始化表单时传递label_suffix="",例如:

    class SomeView(FormView):
    ...
        def get_form_kwargs(self):
            kwargs = super().get_form_kwargs()
            kwargs["label_suffix"] = ""
            return kwargs
    

    或者,您可以在表单的__init__ 方法中覆盖此参数:

    class SomeForm(forms.Form):
        def __init__(self, *args, **kwargs):
            kwargs["label_suffix"] = ""
            super().__init__(*args, **kwargs)
    

    【讨论】:

      【解决方案2】:

      这对我来说只适用于 Django 2.2:

      class ImageUploadForm(forms.ModelForm):
          def __init__(self, *args, **kwargs):
              super().__init__(*args, **kwargs)
              self.label_suffix = ""  # Removes : as label suffix
      
          # ...the rest of the form code...
      

      【讨论】:

        【解决方案3】:

        您必须在初始化时覆盖 label_suffix。尝试进行以下更改:

        class ImageUploadForm(forms.ModelForm):
            def __init__(self, *args, **kwargs):
                kwargs.setdefault('label_suffix', '')
                super(ImageUploadForm, self).__init__(*args, **kwargs)
        
            # ... (the rest of your code) ...
        

        【讨论】:

        • 这没有帮助。冒号形式的 initial_text 不隐藏。
        猜你喜欢
        • 2021-06-15
        • 2017-05-16
        • 1970-01-01
        • 2016-03-05
        • 1970-01-01
        • 1970-01-01
        • 2016-03-25
        • 1970-01-01
        • 2014-12-31
        相关资源
        最近更新 更多