2015-04-18 41 views
4

這是我的模型:Django的 - 文本字段不能爲空或空白

class Blog(models.Model): 
    title = models.CharField(max_length=300, blank=True, null=True) 
    description = models.TextField(blank=True, null=True) 
    image = models.ImageField(upload_to=get_upload_file_name, blank=True, null=True, default='') 
    pubdate = models.DateTimeField(default=timezone.now) 
    of_type = models.CharField(max_length=2,choices=TYPES) 

當我syncdb,它不正確執行syncdb。但是當我在管理員中嘗試保存一個沒有描述的博客時,它不會。它顯示錯誤到

此字段是必填項。

我該如何克服這個問題?

在管理,但是我現在用的CKEditor使用它的小部件:

class BlogAdminForm(forms.ModelForm): 
    description = forms.CharField(widget=CKEditorWidget()) 
    class Meta: 
     model = Blog 

class BlogAdmin(admin.ModelAdmin): 
    form = BlogAdminForm 

admin.site.register(Blog, BlogAdmin) 

我做得不對的代碼?請幫我解決這個問題。我將非常感激。謝謝。

回答

8

required=False參數添加到窗體字段定義:

description = forms.CharField(required=False, widget=CKEditorWidget()) 

順便說一句,你可以使用ModelAdminformfield_overrides選項,而不是更換整個形式:

class BlogAdmin(admin.ModelAdmin): 
    formfield_overrides = { 
     models.TextField: {'widget': CKEditorWidget()}, 
    } 
相關問題