'NoneType'对象没有属性'split'

时间:2016-03-10 06:08:40

标签: python django

在我的 models.py

class Post(models.Model):
    url = models.URLField(max_length=250, blank=True, null=True)

    @property
    def domain(self):
        long_url = urlparse(self.url).netloc if self.url else "hello"
        return long_url.split('.', 1)[1] if long_url.split('.', 1)[0] == 'www' else long_url

但我决定删除“你好”,所以我改为无。

现在我收到了错误:

  

'NoneType'对象没有属性'split'

任何帮助请...

1 个答案:

答案 0 :(得分:1)

您的long_url可以为null,因为您的模型会接受它。在执行拆分之前添加空检查。

return long_url.split('.', 1)[1] if (long_url and long_url.split('.', 1)[0] == 'www') else long_url

应该有用。