Django和换行问题

时间:2011-07-17 03:13:33

标签: python django

多年来我遇到了一个问题。

问题是一个长文本没有被div中的空格分隔。没有应用换行,它会破坏所有布局。

如何以良好的方式修复django?

这就是我所看到的:

enter image description here

3 个答案:

答案 0 :(得分:7)

据我所知,这是HTML方面的问题,而不是django-side。对于HTML解决方案,请查看How to word wrap text in HTML?。如果您仍想在python代码中包装文本,textwrap.wrap将帮助您。

此外还有方便的模板标记:wordwrap。它使用django.utils.text.wrap函数,它似乎更适合在Django项目中使用。

答案 1 :(得分:1)

我不知道它是否有帮助,但一种方法可能是创建一个基于truncatewords过滤器的新过滤器。 https://docs.djangoproject.com/en/1.3/ref/templates/builtins/#truncatewords

代码看起来非常简单:

def truncate_filter(value, maxlen):
    if len(value) <= maxlen:
        return value
    return value[:maxlen-2] + '..'

另一个意思是使用:{{ username|stringformat:".10s" }}截断10个字符。 https://docs.djangoproject.com/en/1.3/ref/templates/builtins/#stringformat

答案 2 :(得分:1)

这让我烦恼,因为内置的自动换行模板标签本应该起作用。而是使用这个......

{{ value|wordwrap:50|linebreaksbr }}

{{ value|wordwrap:50|linebreaks }}

取决于您是否需要<br><br> and <p>代码