提问人:Cat Morley 提问时间:4/25/2023 更新时间:4/28/2023 访问量:57
如何在表单文本区域中显示模型参数
How to display model parameters in a form text area
问:
我正在使用表单在我的 rails 应用程序中创建自定义电子邮件模板,但我希望能够使用模型中的参数自定义电子邮件正文的某些部分。
这是我的mailto链接的代码:
<a href="mailto:<%= @contact.email_address %>?subject=<%= @tracker.title %> <%= @email.template.subject %>&Body=Hey <%= @contact.first_name %>,%0D%0A %0D%0A <%= @email.template.body %> %0D%0A Thanks, Cat">Send template</a>
因此,在生成电子邮件正文的 @email.template.body 的表单文本区域中,我希望能够编写如下内容:
We'd love to run a feature on <%= @goal.title %> for our magazine.
我希望 @goal.title 代码显示它从我的模型中获得的值 - 在本例中为企业名称。但是,它只是显示 <%= @goal.title %>而不是拉入地名。
我希望这是有道理的。有没有人对我如何使代码正确显示有任何建议,或者知道允许我创建在这种情况下可能起作用的自定义变量的文本编辑器?
答:
0赞
max
4/28/2023
#1
如果完全信任输入,则可以在控制器中使用内联渲染:
result = render_to_string(inline: the_template_string)
可以在其他上下文(如模型)中进行渲染,但您必须设置绑定并执行更多细节工作 - 有关示例,请参阅 ERB 文档。
我怎么强调都不为过,这应该非常小心。ERB 可以运行任意 Ruby 代码,包括运行 shell 命令。
评论
0赞
Cat Morley
4/29/2023
再次感谢你@max - 这很完美,你又来救援了!
评论