Джанго, как получить первые 10 символов TextField в виде строки?

Я думаю, что когда вы определяете String, вы определяете объект. Поэтому вам нужно использовать .equals(). Когда вы используете примитивные типы данных, вы используете ==, но с String (и любым объектом) вы должны использовать .equals().

0
задан Galaxy 10 March 2019 в 01:29
поделиться

2 ответа

Вы можете нарезать строку с помощью self.response_content[:10].

В вашем случае:

def __str__(self):
    return (str(self.id) + " " + self.author_name + "|" + self.response_content[:10])
0
ответ дан dan-klasson 10 March 2019 в 01:29
поделиться

Это может быть сделано двумя способами

  1. Возврат response_content, просто разрезая, как показано ниже.
def __str__(self):
        return (str(self.id) + " " + self.author_name + "|" + self.resonse_content[:10])
  1. Используя фильтр по умолчанию Django, а именно truncatechars.
from django.template.defaultfilters import truncatechars

class Response(models.Model):
...
    def __str__(self):
        return (str(self.id) + " " + self.author_name + "|" + truncatechars(self.resonse_content, 10))

0
ответ дан Devang Padhiyar 10 March 2019 в 01:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: