我想给我的博客模型添加一个StackOverflow样式的标签输入。这是一个已经有很多数据的模型。在
class BlogPost(models.Model):
# my blog fields
try:
tagging.register(BlogPost)
except tagging.AlreadyRegistered:
pass
我以为这就是我所需要的,所以我浏览了我以前的博客文章数据库(这是一个新移植的博客)并将标签复制到了里面。它起作用了,我可以显示标签并按标签过滤。在
然而,我刚写了一篇新的博客,意识到那里没有标签栏。在
阅读文档(巧合的是,足够干的可以作为止汗剂使用),我找到了TagField。我想这只是现有标记寄存器上的一个管理器风格的层,我添加了它。它抱怨没有标记列。在
我不想仅仅为了满足创建一个输入它们的接口而对标签进行反规范化。是否有一个TagManager类可以在模型上设置?在
^{pr2}$
您是否尝试在模型中使用TagField()而不是注册模型?在
就像istruble说的(抱歉,我不能在上面发表评论): 您是否尝试在模型中使用TagField()而不是注册模型?在
但是在那之后,你必须改变你的数据库表。我建议备份你的数据库。然后运行
manage.py reset APPNAME
检查表是如何更改的。恢复备份并尝试更改表,使其看起来像新表。这样您就不会丢失数据;)记住,syncdb将无法工作,因为表exist allready。在
相关问题 更多 >
编程相关推荐