https://t.me/pydjango/500866
Class Topping(models.Model): name=models.TextField() def __str__ (self): if self.name >= 50: return f'{self.name[:50]}...'
Спасибо len работал
def __str__(self): name = self.name if len(name) > 50: return '{}... '.format(name[:50]) return name[:50]
def __str__(self): name = self.name if len(name) > 49: return '{}... '.format(name[:50]) return name Очень долгое возвращаемое значение будет. Насколько тебе это будет удобно?
[:50] - что делает?
Если свыше 50 символов в строке, то в конце добавляется троеточие иначе без точек
В else сколько может быть символов в строке?
До 50 символов в строке
Если там может быть менее 50 символов то к чему может перевести: [:50]?
А именно если символов будет меньше 49 что вызовет это[:50]?
В блоке иф Мы приказываем django выводит только первые 50 символов и в конце 3 точка Иначе всю короткую текст
[:50] это ошибка
Выше написал
Там я должен написать просто name, я ошибся при печать
def __str__(self): name = self.name if len(name) > 49: return '{}... '.format(name[:50]) return name @dantyan хотя-бы так, хотя значение будет очень длинным
Да и оборачивать строку в строку тоже не нужно
Спасибо за эти вопросы, я изучал что то новое
Обсуждают сегодня