mysql - 在 MySQL 和 Heroku 上为 Rails 设置富文本支持

标签 mysql ruby-on-rails ruby-on-rails-3 heroku richtext

在 Rails 中存储包含粗体、项目符号点和不同大小的格式化文本正文需要什么?

首先,text字段类型有能力容纳这个吗?

如果是这样,我需要做的就是使用富文本编辑器进行编辑,然后使用 <pre> 显示吗? ?

最佳答案

是的,text type是用来存储字符串的。

通常的方法是使用生成 HTML 的 Javascript 富文本编辑器。您将原始 HTML 直接保存到数据库中,然后在显示它时对其进行清理。这是为了防止人们在文本区域中输入 Javascript 和其他恶意内容,当其他访问者查看他们的输入时,这些内容将被执行。

默认情况下,Rails 3 会清理您的输出,因此所有 HTML 都将被转义。您需要调用 <%= @model.rich_text.html_safe %>跳过此清理,或者(更好!)调用 <%= sanitize(@model.rich_text, :tags => %w(b i p)) %> ,传入一个明确的允许标签列表。

我没有使用 Heroku 的经验,但我无法想象它会有什么不同。

关于mysql - 在 MySQL 和 Heroku 上为 Rails 设置富文本支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5310656/

相关文章:

sql - 如何在MySQL的结果集中选择具有唯一字段的所有行,并获取该行中的所有字段?

javascript - rails 嵌套表单 jquery 图像预览

ruby-on-rails - rails 控制台要求 nokogiri 返回 false(但在 irb 中工作)

ruby-on-rails - 想要为多个站点/域使用 1 个 rails 应用程序

ruby-on-rails - 为什么我不能在 Rails 中将任何模型保存到 PostgreSQL 数据库?

php - 从sql获取记录计数并使用php将其传递到xml

mysql - 从子查询中删除

php - 如何从 url 将数据插入数据库

ruby-on-rails - Rspec 检查 ActiveModel::Errors

ruby-on-rails-3 - 事件记录: delete_all with limit