一、背景
在爬取某网站的小说和文章的时候将内容保存到了MySQL数据库中,再使用Django模板进行渲染的时候发现数据没有换行。在数据库中换行正常
二、原因分析
数据库中的换行是\n,而HTML中的换行是<br>。该网站使用JavaScript的\n进行换行。而不是THML中的<br>标签
三、解决办法
- 直接修改数据库保存的内容
#将\n替换成<br>标签,或者使用JS来控制换行
mysql> UPDATE 表名 SET 字段名= REPLACE('字段名','\n','<br>') WHERE XXXX
- 如果使用Django,那么views从models获取到数据后进行处理,再将处理过后的数据当做参数传给模板
遍历从数据库获取的文章内容,字符串替换
- 如果不在views进行处理,那么在模板中对传过来的参数进行处理