2011-09-17 215 views
0

我使用Django 1.3构建了一个应用程序,现在正尝试使用postgresql将其部署到linode上的ubuntu 10.10。我在前端和静态媒体上使用nginx,并向apache/mod_wsgi提供的应用程序发送应用程序请求。一切工作正常我的本地开发机器,这也是Ubuntu 10.10,我可以在我的Web服务器上安装应用程序,但是当我尝试访问主页时,我得到以下错误:'str'对象没有属性'_default_manager'部署django应用程序时出错

根据错误消息,它似乎遇到了一个模型表单有问题,其中我将字段子类化,将其从FK字段更改为URLField并手动执行验证。这是抛出错误的形式:

class TopicResourceForm(ModelForm): 
    resource = URLField(label='Resource URL') 
    class Meta: 
     model = TopicResource 
     fields = ('title', 'rtype', 'note') 

而这些是模型。

class TopicResource(models.Model): 
    added = models.DateTimeField(auto_now_add=True) 
    updated = models.DateTimeField(auto_now=True) 
    title = models.CharField(max_length=140, blank=True) 
    note = models.TextField(blank=True) 
    resource = models.ForeignKey('aresource.Resource') 
    rtype = models.ForeignKey('aresource.ResourceType', verbose_name="Resource Type", blank=True, null=True) 
    topic = models.ForeignKey('mystudy.Topic') 

    def __unicode__(self): 
     return '%s on %s' % (self.resource, self.topic) 

    def get_absolute_url(self): 
     return '/topics/%s/%s/%s' % (self.topic.slug, self.resource.id, 
     self.id) 



class Resource(models.Model): 
    added = models.DateTimeField(auto_now_add=True) 
    updated = models.DateTimeField(auto_now=True) 
    url = models.URLField(unique=True) 
    rtype = models.ForeignKey(ResourceType, verbose_name="Resource Type", blank=True, null=True) 

    def __unicode__(self): 
     return '%s' % self.url 

    def get_absolute_url(self): 
     return '/resources/%s' % self.id 

任何帮助,将不胜感激,谢谢。

回答

相关问题