0

我正在使用 rails 3。在实施 CMS 时,正文应该显示以下内容:

<h1>Welcome to our home page</h1>.

但显示带有标签的文本。在我的views/viewer/show.html中,我放置了以下代码<%= @page.body %>

我该怎么做才能解决这个问题?

4

2 回答 2

1

Rails 这样做是为了保护您免受XSS 攻击。为了防止标签从字面上显示,您可以使用html_safe

<%= @page.body.html_safe %>

html_safe在您了解后果的情况下使用!如果您不这样做,您可能会向 XSS 攻击开放您的应用程序。

于 2013-07-03T09:47:24.760 回答
-1

这使您试图实现的目标感到困惑。如果您只想显示该页面中的一行,则:

在您的 app/controllers/viewer_controller 中执行以下操作:

@message = "Welcome to our home page"

在您查看 app/views/viewer/show.html 时,请执行以下操作:

</html>
  <body>
    <%= @message%>
  </body>
</html>
于 2013-07-03T09:35:46.700 回答