2010-12-10 38 views
0

我需要将colorPicker添加到我的django模型中,并编写了一个自定义小部件。然而,当我这个colordfield添加到我的模型,Django的给这个错误:在django中添加自定义字段和更新模型问题

column mediaplanner_ievent.color does not exist 
LINE 1: ...nt"."bits", "mediaplanner_ievent"."capture_link", "mediaplan... 

我的模式是:

from mediaplanner.custom_widgets import ColorPickerWidget 

class ColorField(models.CharField): 
     def __init__(self,*args, **kwargs): 
       kwargs['max_length'] = 10 
       super(ColorField, self).__init__(*args, **kwargs) 

     def formfield(self, **kwargs): 
       kwargs['widget'] = ColorPickerWidget 
       return super(ColorField, self).formfield(**kwargs) 


class iEvent(models.Model): 
    name = models.CharField(verbose_name= u"Uygulama Adı", max_length=100, unique=True) 
    bits = models.CommaSeparatedIntegerField(verbose_name= u"Bitler",max_length=100) 
    capture_link = models.URLField(verbose_name= u"Capture URL", null=True, blank=True) 
    color = ColorField(blank=true) 
    class Meta: 
     verbose_name = u"red button" 
     verbose_name_plural = u"red buttonlar" 

    def __unicode__(self): 
     return smart_str("%s"% self.name) 

奇怪的是,当我看着我的数据库,存在colorfield。我不想删除数据库并重新加载。但当然,如果这是唯一的解决方案,那么别无选择。

那么有人可以帮助我如何解决它?

+1

你的问题似乎对我来说还不太清楚,你没有在模型定义中使用'colorfield'!此外,你的数据库中缺少一个字段'color',而不是'colorfield';你可能在创建表之后添加了这个字段......还要根据django指南命名你的类! – 2010-12-10 13:31:24

+0

对不起,我更新了信息 – iva123 2010-12-10 13:33:59

回答

0

数据库中的字段名称为colorfield bu您的模型中的字段名为color。你必须改变一个或另一个以使其再次工作。

相关问题