Django标签:“Django”;“已注册”;例外

Django标签:“Django”;“已注册”;例外,django,django-models,django-tagging,Django,Django Models,Django Tagging,我安装了Django标签。我阅读了教程和反汇编,它是如何工作的。 在我的模型中: import tagging class TaggingWidget(models.Model): """Widget for tagging.""" name = models.CharField(max_length = 50) tagging.register(TaggingWidget) 当我尝试将小部件导入shell时,出现了一个异常: In [1]: from soapapp i

我安装了Django标签。我阅读了教程和反汇编,它是如何工作的。 在我的模型中:

import tagging

class TaggingWidget(models.Model):
    """Widget for tagging."""
    name = models.CharField(max_length = 50)


tagging.register(TaggingWidget)
当我尝试将小部件导入shell时,出现了一个异常:

In [1]: from soapapp import models
---------------------------------------------------------------------------
AlreadyRegistered                         Traceback (most recent call last)

    /home/user/workspace/soapbox/<ipython console> in <module>()

    /home/user/workspace/soapbox/soapapp/models.py in <module>()
      8 
      9 
---> 10 tagging.register(TaggingWidget)
     11 
     12 

    /home/user/Envs/env1/lib/python2.6/site-packages/tagging/__init__.pyc in register(model,       tag_descriptor_attr, tagged_item_manager_attr)
     37     if model in registry:
     38         raise AlreadyRegistered("The model '%s' has already been "
---> 39             "registered." % model._meta.object_name)
     40     if hasattr(model, tag_descriptor_attr):
     41         raise AttributeError("'%s' already has an attribute '%s'. You must "

AlreadyRegistered: The model 'TaggingWidget' has already been registered.
[1]中的
:来自soapapp导入模型
---------------------------------------------------------------------------
AlreadyRegistered Traceback(最近一次呼叫上次)
/主页/用户/工作区/soapbox/in()
/home/user/workspace/soapbox/soapapp/models.py in()
8.
9
--->10标记。寄存器(标记小部件)
11
12
/注册表中的home/user/Envs/env1/lib/python2.6/site packages/tagging/__init__;.pyc(模型、标记、描述符、标记、项目管理器)
37如果模型在注册表中:
38 raise AlreadyRegistered(“模型“%s”已注册”
--->39“已注册”。%model.\u meta.object\u name)
40如果hasattr(型号、标记\u描述符\u attr):
41 raise AttributeError(“%s”已具有属性“%s”。您必须
AlreadyRegistered:模型“TaggingWidget”已注册。
怎么了?我该怎么办?

似乎是。一个简单的解决方法是

try:
    tagging.register(TaggingWidget)
except tagging.AlreadyRegistered:
    pass