【问题标题】:BBCode for Ruby on Rails用于 Ruby on Rails 的 BBCode
【发布时间】:2009-10-01 19:37:43
【问题描述】:

所以我正在组建一个简单的论坛。我想允许我的用户有限的格式选项和 BBCode 对我的用户来说已经足够了。知道我肯定不是第一个想要将 BBCode 与 RoR 一起使用的人,我在 Google 上搜索,但找不到关于如何创建接受 BBCode 的编辑器的直接教程,也找不到解析和显示 BBCode 格式输入的方法。

任何帮助或指南将不胜感激!

【问题讨论】:

    标签: ruby-on-rails ruby formatting wysiwyg bbcode


    【解决方案1】:

    你应该试试bb-ruby。它在网页上的文档似乎非常清晰明了。

    【讨论】:

    • 这个版本的最后一个版本是在 2 年前发布的,它对嵌套标签的支持很差,因为它是基于正则表达式的。所以 [ul][li][ul][li][/li][/ul][/li][/ul] 会产生不好的结果
    • >此版本的最后一个版本是 2 年前发布的,我必须注意,在发布答案时是最新的。
    【解决方案2】:

    这是另一个你可能会发现有用的宝石

    http://github.com/jarrett/rbbcode

    【讨论】:

    • 我刚刚发布了一个新版本的rbbcode。比原版好太多了首先,它基于 Treetop 而不是我自己的 hacked-together 状态机。
    【解决方案3】:

    宝石文件

    gem 'bb-ruby'
    # run `bundle`
    

    在那个地方(haml):

    %h1= put_header_string.bbcode_to_html.html_safe
    %p= "[b]bold text[/b]".bbcode_to_html.html_safe
    

    除了内置插件,您还可以根据需要扩展自己的 bbcode。例如:

    module BBRuby
      @@tags = @@tags.merge({
          'Email' => [
            /\[email(:.*)?\](.*?)\[\/file\1?\]/mi,
            lambda{ |e| "<span class='email'>#{e[2].gsub('@','<i>(at)</i>')}</span>"},
            'protect email from spam',
            '[email]electronic@test.ru[/email]',
            :email
          ],
        })
    end
    

    到位

    [b]Contact me:[/b][email]email@test.ru[/email]
    

    联系我:电子邮件(at)test.ru


    bb-ruby on github | bb-ruby on rubygems | bb-ruby home | tags processed list

    【讨论】:

    • 为什么不在 Gemfile 中直接设置 bb-ruby gem?
    • @sidney,天哪,udp/重写。 (这在我以前的托管服务提供商中是不可能的)
    猜你喜欢
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 2015-06-16
    • 2011-06-17
    • 2011-01-06
    • 2012-03-07
    • 1970-01-01
    相关资源
    最近更新 更多