Html 在控制器中生成下标并传递到视图

Html 在控制器中生成下标并传递到视图,html,ruby-on-rails,Html,Ruby On Rails,在控制器中,我可以将字符串传递给视图 如何传递带下标的字符串 在html中,只需使用标记即可 我尝试了3次将此下标传递给视图,但失败了 如果我在字符串中传递,它将显示Itag,而不是Itag 如果我使用string1=“string”+“tag”+,并传递 string1,控制器将给出错误 最后,我尝试直接复制页面内的下标字符串,我 还有一个无法显示的错误 如何将下标字符串传递给视图?我必须循环不同的条件,所以我不能每次使用标记,我需要控制器的通行证 编辑: 我在控制器中尝试了这个代码 @v

在控制器中,我可以将字符串传递给视图

如何传递带下标的字符串

在html中,只需使用
标记即可

我尝试了3次将此下标传递给视图,但失败了

  • 如果我在字符串中传递
    ,它将显示
    Itag
    ,而不是Itag
  • 如果我使用
    string1=“string”+“tag”+
    ,并传递
    string1
    ,控制器将给出错误
  • 最后,我尝试直接复制页面内的下标字符串,我 还有一个无法显示的错误
  • 如何将下标字符串传递给视图?我必须循环不同的条件,所以我不能每次使用
    标记,我需要控制器的通行证

    编辑:

    我在控制器中尝试了这个代码

      @valuedisplay=@value.to_s + " m/s<sup>2</sup>".html_safe
    
    @valuedisplay=@value.to_s+“m/s2”.html\u安全
    
    作为建议的解决方案,我得到:

    正如我在第一次尝试中所说的,显示
    ,而不是m2


    如果我在视图中这样做,我有许多不同类型的数据,我需要根据不同的类型在视图中添加检查数据类型代码,这是可行的,但会使视图变得混乱,我觉得应该有一个整洁的方法在controller中解决它?

    您需要在视图中安全地呈现HTML,为此,您需要在字符串上调用
    html\u safe
    函数:

    @str = "I<sub>tag</sub>".html_safe
    
    注意事项:

    这样做是非常糟糕的做法
    ag
    属于视图,因此它应该在视图中。您可以执行以下操作:

    在控制器中:

    @str = "tag"
    
    鉴于:

    I<sub><%= @str %></sub>
    <%# or %>
    <%= "I<sub>#{@str}</sub>" %>
    
    I
    
    我试过了,但它显示了Itag,显示了子标记…Itag,复制过去,下标为“I₄".html\u safe也给出了错误:“很抱歉,出了点问题。”…怎么可能?我自己查过了。写
    @str=“Itag”“.html\u safe
    ,在您看来,
    ,它应该能够正确地呈现。感谢您的努力,但它并没有像我预期的那样工作,我已经在编辑下更新了您的建议代码。
    I<sub><%= @str %></sub>
    <%# or %>
    <%= "I<sub>#{@str}</sub>" %>