【问题标题】:How to display html_safe but over-ride links如何显示 html_safe 但覆盖链接
【发布时间】:2014-01-23 17:23:53
【问题描述】:

我正在使用https://github.com/ejholmes/active_admin_editor 创建我的博文。

所以在博客索引页面上,我需要在 html_safe 中显示正文的前 100 个字符,因此它不是原始的 html 代码,但这也会使链接处于活动状态。例如,如果在前几行中我有一个出站链接,我需要让 link_to blogpost_path(bp) 覆盖我在 html_safe 正文内容中的所有链接。

#post-wrapper
    - @blogposts.each do |bp|
      = link_to blogpost_path(bp) do
        .blogpost
          .blog-title
            %h2= bp.title
            .blog-image
              - unless bp.attachment.url.include?('missing')
                = image_tag bp.attachment.url(:medium)
          .blog-author
            %p= "by #{bp.author}"
          .blog-date
            %p= time_tag bp.created_at
          .blog-body
            %p= bp.body[0..100].html_safe

【问题讨论】:

    标签: html ruby-on-rails haml


    【解决方案1】:

    我认为正确的做法是去掉这 100 个字符中所有你不想要的 HTML 标签。

    您可以使用strip_tags 删除所有内容,也可以使用strip_links 仅删除链接。

    您可以在这里找到详细信息:http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html#method-i-strip_tags

    【讨论】:

    • %p= strip_links(bp.body[0..100]).html_safe
    猜你喜欢
    • 2011-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多