我正在尝试在来自ActionMailer的电子邮件的主题行中使用一些嵌入式ruby,但不断出现不同的错误。
我找不到有关正确语法的任何文档。修复这行代码的任何资源?
mail(to: @user.email, subject: "Your Reservation Confirmation for" + @restaurant.name)
我已经传递了所有变量。我只需要看看如何组合文本和这些输入。
由于
答案 0 :(得分:2)
有两种常见方法:
首先:(关于代表)
"...Confirmation for" + @restaurant.name.to_s
第二: 你可以使用字符串插值
"...Confirmation for #{@restaurant.name}"
答案 1 :(得分:1)
我不知道这是否是故意的,但显然@restaurant.name
正在返回一个数字(正如您澄清的那样,您正在获得TypeError: no implicit conversion of Fixnum into String
)。致电@restaurant.name.to_s
将解决这个问题。
As G.B mentioned in another answer,字符串插值,如" ...确认#{@restaurant.name}"也可以,因为它会自动为您调用#to_s
。
我将解决方案应用到答案中,因为我们在评论中澄清了这一点。