-1

認証された管理者ユーザーが、Web フォームで置換用の変数を入力できるようにしたいと考えています。「email」<<eric>>または<<jeremy>>「」と入力すると、and が変数 eric と jeremy の内容に置き換え<<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}")

$1 または eval を使用しても機能しませんでした。出力は Web サイトに再表示されます。管理者がこれらのショートカット変数を使用できる限り、区切り記号は重要ではありません。

4

1 に答える 1

0

おそらく、置換文字列の名前をキーにして、置換文字列をハッシュに格納する方が簡単です。すなわち:

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
于 2013-10-09T13:07:48.570 に答える