pycharm 应为类型“Sized”,而得到的是“TextField”

mrwjdhj3  于 8个月前  发布在  PyCharm
关注(0)|答案(1)|浏览(192)

我正在使用Django进行一个小项目,我必须验证文本字段的大小,然后根据条件返回一些数据。我使用len()方法来检查TextField()的大小,然后返回一些数据。代码可以正常工作,但IDE(Pycharm)中有一个错误,它说:“应为类型”Sized“,但得到的是”TextField“。”我花了一些时间在网上寻找一些资源,但我找不到任何与我的问题有关的东西。
你以前处理过这个吗?
代码如下:
`

class Topic(models.Model):
    """A topic the user is learning about."""
    text = models.CharField(max_length=200)
    date_added = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        """Return a string representation of the model."""
        return self.text

 

    class Entry(models.Model):
         """Something specific learned about a topic."""
         topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
         text = models.TextField()
         date_added = models.DateTimeField(auto_now_add=True)

    class Meta:
        verbose_name_plural = 'entries'

    def __str__(self):
        """Return a string representation of the model."""
        if len(self.text) < 50:
            return f"{self.text}"
        return f"{self.text[:50]}..."

`
谢谢你,谢谢!

fd3cxomn

fd3cxomn1#

我认为这是一个压痕的问题,或者你把压痕错了吗?你的代码应该是:

class Topic(models.Model):
    """A topic the user is learning about."""
    text = models.CharField(max_length=200)
    date_added = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        """Return a string representation of the model."""
        return self.text

 

class Entry(models.Model):
     """Something specific learned about a topic."""
     topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
     text = models.TextField()
     date_added = models.DateTimeField(auto_now_add=True)

    class Meta:
        verbose_name_plural = 'entries'

    def __str__(self):
        """Return a string representation of the model."""
        if len(self.text) < 50:
            return f"{self.text}"
        return f"{self.text[:50]}..."

相关问题