在Django视图中用BR标签替换纯文本中的换行符
Django 提供了一个叫做 linebreaks 模板标签 的功能,它的作用和 PHP 的 nl2br
函数很相似。
这个功能运行得很好,但每次请求都会处理给定的文本,这样会浪费资源。我更希望在把文本保存到数据库之前,就处理一次。
在 Django 的视图中,有没有类似的功能可以使用呢?
2 个回答
9
linebreaks这个模板标签其实就是对django.utils.html
里面的换行函数的一个包装,所以你可以直接使用那个函数。
2
其实,如果你把数据存储在数据库里,那么额外的查询会让你的请求响应时间变得更长,这样反而比你通过缓存一些高效的Python文本转换所节省的时间要多得多。
一个更好的解决办法是缓存视图。Django提供了很多非常灵活的缓存方案。
不要成为那个过早优化的人,尤其是那些微小的优化。大部分时间都是在等待数据库的响应或者网络延迟。