2011-12-04 92 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