Ruby -html标签不会转换为格式化标签

时间:2012-04-11 14:17:59

标签: ruby-on-rails ruby string string-formatting html

我有一个简单的表单,用户可以写一些文本,这个文本将发送到他的电子邮件。这个过程运行正常,但我的用户写的文本有问题 - 在电子邮件中显示如下:

["sadgsdah\r\nsdh\r\ndsf\r\nh\r\nfdhdfhdfh\r\n\r\n\r\n\r\nfdh\r\ndf\r\njh"]

为什么有括号和\n\r字符?

在我将包含内容的变量放入电子邮件模板之前,我尝试了以下操作:

  

mess_body = params [:contact] [:message] .to_s.html_safe

但不幸的是,这对我没有帮助......我做错了什么?

2 个答案:

答案 0 :(得分:1)

要在html中将换行符转换为正确,请使用simple_format转换文本。

答案 1 :(得分:0)

首先

mess_body = params[:contact][:message]

返回一个数组,而不是单个数据。这就是为什么你得到输出周围的[“和”]。 你可以得到这样的第一个元素:

mess_body = params[:contact][:message][0]  

此外\ n \ r是文本框的行尾。假设您发送的电子邮件是HTML,\ n \ r \ n应替换为< br>在字符串