簡體   English   中英

Django:CharField 刪除默認值-------選擇

[英]Django: CharField remove default ------— choice

在我的models.py我有以下 CharField

class Method1(models.Model):
    inputfile_param     = models.FileField()
    clustering_method_param     = models.CharField(max_length=20,
         default='ward', blank=True, choices=(
         ('complete', 'Complete linkage'),
         ('average','Average linkage'),
         ('ward','Ward'),))

如何從 CharField 中刪除默認的 --------- 選擇? 我嘗試插入empty_label=None但不起作用。

而且我無法刪除blank=True因為它會阻止FileField()無法捕獲上傳的文件。

我的forms.py看起來像這樣:

class Method1ClusteringForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(Method1ClusteringForm, self).__init__(*args, **kwargs)

我發現也可能是您的解決方案。

嘗試:

from django.forms import ModelForm
from django import forms as forms

class Method1ClusteringForm(ModelForm):
    clustering_method_param = forms.forms.TypedChoiceField( 
                    required=True,
                    initial = 'ward',
                    choices = (
                        ('complete', 'Complete linkage'),
                        ('average','Average linkage'),
                        ('ward','Ward'),)
                    )    
    class Meta:
        model = Method1
        fields = ('inputfile_param', 'clustering_method_param',)

您必須在字段定義中刪除blank=True 這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM