美文网首页
个人博客bug修复记录

个人博客bug修复记录

作者: 绿林好汉_文武 | 来源:发表于2016-12-16 00:26 被阅读0次

    起因

    这2天更新了个人博客网站的代码,基本把大部分功能做完了。刚刚更新完后,打开博客首页一看网页上有几个奇怪的小方块,在博客正文里却没有了。查看网页源码,多了好几个<code> </code> 这是什么?我记得我没在页面中写过,赶紧回去看源码发现源码中没有写过这个啊,再开自己的runserver调试,发现在自己的电脑上就是正常的。难道在部署的机器上有问题?不会啊,没更新代码之前没有这个问题啊!

    过程

    检查了很久才发现,原来我用markdown显示前端页面代码,makedown会在前端用<code> import django </code>来显示代码。在首页展示博客正文时,用django template tagstruncatechars来只显示博客文章的前200个字符,结果truncatechars把html代码截断了,只有前一个<code>,没有</code>,所以导致前端页面的不正常显示。可是在我自己的电脑上却没有这个问题,看来原因就是开发环境和生产环境的django版本不统一。

    结果

    最后查看了最新的文档更换使用truncatewords_html更好

    truncatewords_html

    Similar to truncatewords, except that it is aware of HTML tags. Any tags that are opened in the string and not closed before the truncation point, are closed immediately after the truncation.
    This is less efficient than truncatewords, so should only be used when it is being passed HTML text.
    For example:
    {{ value|truncatewords_html:2 }}
    If value is <p>Joel is a slug</p>, the output will be <p>Joel is ...</p>.
    Newlines in the HTML content will be preserved

    后记

    此事得出的教训及经验:

    1. 需要对开发环境和生产环境统一性的检查
    2. 文档看的不仔细后果很严重啊

    greenblog个人博客
    github地址

    相关文章

      网友评论

          本文标题:个人博客bug修复记录

          本文链接:https://www.haomeiwen.com/subject/qnagmttx.html