我正在使用django开发电子商务网站。我的问题是,有些产品的名字比另一个长,这使得产品的展示看起来很奇怪。
问题:如何限制产品名称的长度并添加点以显示其继续
示例:product_name = "Men Suede Loafers Moccasins Shoes -Black"
看起来像product_name = "Men Suede Loafers Mocca...."
您可以使用|truncatechars
模板过滤器[Django doc]:
{{ product_name|truncatechars:23}}
因此,当您将product_name
存储为全文时,前23个字符的呈现为,然后后跟省略号(…(。
您还可以添加一个完整显示文本的工具提示,例如:
<ptitle="{{ product_name }}">{{ product_name|truncatechars:23 }}</p>
您可以覆盖save((方法
def save(self, *args, **kwargs):
if len(self.product_name) > 20:
self.product_name = self.product_name[:20] + '...'
super().save(*args, **kwargs)
您可以使用len
获取字符串的长度
您可以使用切片[:]
切割字符串
如果长度大于某个阈值,则可以将省略号添加到字符串中。
if len(product_name) > 15:
product_name = product_name[:15] + "..."