Railsのslim表記で、カスタムデータの属性名を動的に設定したい

実現したいこと

Railsで以下のようなhtmlになるように、slim表記でカスタムデータの属性名のdata-以降を動的に設定したいと考えています。

実現したい結果

<div class="example" data-[変数の値]="sample_value"><div>

実装イメージ

controller

@attr_name = "sample"

slim

.example{ data-@attr_name="sample_value" }

発生している問題・分からないこと

以下の実装を試したのですが、Slim::Parser::SyntaxError「Expected attribute」が発生してしまいレンダリングされません。

該当のソースコード

slim

1.example { data-#{@attr_name }="sample_value" }

試したこと・調べたこと

上記の詳細・結果

以下の2点を試してみましたが、解決しませんでした。

  • .example data-#{@attr_name}="sample_value"へ変更

結果が<div class="example">data-test="sample_value"</div>となってしまい、カスタム属性に設定されませんでした。

  • .example{ data: { @attr_name => "sample_value" } }へ変更

同様にSlim::Parser::SyntaxError「Expected attribute」が発生してしまいます。

補足

特になし

コメントを投稿

0 コメント