Ruby on rails 通过输入标记传递变量

Ruby on rails 通过输入标记传递变量,ruby-on-rails,Ruby On Rails,我希望经过身份验证的管理员用户能够在web表单中输入替换变量。输入“email或”将用变量eric和jeremy的内容替换和 eric = "<a href='mailto:eric.roberts@example.com'>Eric Roberts</a>" jeremy = "<a href='mailto:jeremy.smith@example.com'>Jeremy Smith</a>" blurb = params[:my_input]

我希望经过身份验证的管理员用户能够在web表单中输入替换变量。输入“email
”将用变量eric和jeremy的内容替换

eric = "<a href='mailto:eric.roberts@example.com'>Eric Roberts</a>"
jeremy = "<a href='mailto:jeremy.smith@example.com'>Jeremy Smith</a>"
blurb = params[:my_input].gsub(/<<(\w+)>>/, "\#{\1}")
eric=“”
杰里米=“”
blurb=params[:我的输入].gsub(/,“\\\{\1}”)

不起作用,也没有使用$1或eval。输出将在网站上重新显示。只要管理员可以使用这些快捷方式变量,分隔符就不重要。

也许更容易将替换字符串存储在散列中,其中键是替换字符串的名称。即:

substitutions = {
  'eric' => "<a href='mailto:eric.roberts@example.com'>Eric Roberts</a>",
  'jeremy' => "<a href='mailto:jeremy.smith@example.com'>Jeremy Smith</a>"
}

match = params[:my_input].match(/<<(\w+)>>/)
blurb = substitutions[match[1]] if match
替换={
‘eric’=>“”,
“杰里米”=>“”
}
match=params[:我的输入].match(//)
blurb=替换[匹配[1]]如果匹配

谢谢,这是一个循环,给了我一个替换列表来显示。