2011-05-11 8 views
3

syncdbを実行しているときにこのエラーが発生しますDjango:モデル検証エラーManytoManyField

問題を把握していないようです。助けてください。

class Business(models.Model): 
    business_type = models.ManyToManyField(BusinessType) 
    business_service_type = models.ManyToManyField(ServiceType) 
    establishment_type = models.ForeignKey(EstablishmentType) 
    logo = models.ForeignKey(ImageBank, related_name = '%(class)s_logocreated',) 
    phone = PhoneNumberField() 
    address = models.ForeignKey(Address) 
    website = models.URLField() 
    name = models.CharField(max_length=64) 

    def __unicode__(self): 
     return self.name 

class ImageBank(models.Model): 
    business = models.ForeignKey('Business', related_name='%(class)s_business') 
    image = models.ImageField(upload_to="images/bank") 

    def url(self): 
     return self.image.url 

    def __unicode__(self): 
     return unicode(self.business) + " : " + unicode(self.image) 

ストアモデル:

class Store(models.Model): 
    business = models.ForeignKey(Business,null=True, related_name='business_creator_set') 
    condition = models.CharField(verbose_name='What do customers have to do?',max_length = 50) 
    reward = models.CharField(verbose_name='What do customers win?',max_length = 50) 
    display = models.BooleanField(default=True) 
    date_created = models.DateTimeField(default=datetime.now) 


    def __unicode__(self): 
     return self.condition + ", " + self.reward 
+0

Storeモデルも追加できますか? –

+0

が追加されました。ありがとうございました。 – Eva611

+0

これはまだ動作していませんか? related_nameを追加すると –

答えて

1

このような何かをやってみてください。

​​

また、問題が解決しない場合はここで

Error: One or more models did not validate: 
store.business: Reverse query name for field 'logo' clashes with field 'ImageBank.business'. Add a related_name argument to the definition for 'logo'. 

は私のモデルですビジネスのrelated_nameを変更してみてください。 logo_idではないものにロゴフィールドを追加します。 logo_idはデータベースがフィールドに使用するもので、競合する可能性があります。

+0

両方の提案を試してみました...助けていないようでした。 – Eva611

+0

うーん...ロゴのrelated_nameを何に変更しましたか? related_name = '%(class)s_logo'のようなものを試してください –

+0

これに変更しました。まだナダ。私は知っているクレイジー。 – Eva611

関連する問題