2011-12-04 94 views
1

我在寫一個使用django的博客程序。關於django ManyToManyField

class Tag(models.Model): 
name = models.CharField(max_length=100) 

class BlogPost(models.Model): 
..... 
tags = models.ManyToManyField(Tag) 
.... 

在Django的管理,在博文標籤字段顯示爲<select>

我怎樣才能使它顯示像<input type="text"/>?並且在輸入新標籤時自動添加標籤。

謝謝。

回答

1

創建您自己的窗口小部件類,它繼承自forms.Widget。覆蓋將標記對象轉換爲字符串的「render」方法。保存表單數據時,可以使用標記字段的「乾淨」方法。對不起我的英語不好。你可以在django-taggit第三方應用程序中看到的好例子https://github.com/alex/django-taggit/blob/master/taggit/forms.py