slimでtype='application/ld+json'のscriptタグを書く
slimを使ってビューファイルを書いていて、scriptタグとしてjson schemaを書かないといけないニーズに遭遇した。
あれ、どう書くんだろう?となったのでメモ。
結論、以下のように|(パイプ)
を使うと見やすくていいみたい。
他にもやり方はありそうだけど、自分はこのやり方が一番見やすいように思う。
例はJson SchemaでWebSiteを記載しておく方法。2行目の|
が重要です。
script type='application/ld+json'
|
{
"@context" : "https://schema.org",
"@type" : "WebSite",
"name" : "サンプルサイト",
"url" : "https://example.com"
}
slimでjavascriptをビューファイルの中に直接書きたい場合、javascript:
を使えばいいけど、それだとtype='text/javascript'
がついてしまう。
例みたいにtype='application/ld+json'
としたいようなときはscript
と書いて上記のように書いてあげるのがよさそう。
ところで、slimは便利だ。railsでアプリを作る、となったら、もう自分には欠かせない。
erbは閉じタグが必要だし、html同様に<>を使ってタグを書かないといけない。
もちろん、エディタのコード補完を使えば、erbでもさほどビューファイルを書くのは面倒ではないかもしれない。
しかし、出来上がったコードの見やすさの点でslimの方が遥かに勝っていると思う。
この記事の環境情報
- Ruby 3.1.2
- slim 3.5.1
Rubyに関する他の記事を読む
- Slack APIによる自動メッセージでユーザーグループにメンションする方法
- RubyでUnixtimeからTimeオブジェクトを生成する
- gemインストール時にUndefined symbols for architecture arm64と出たときの対応
- RubyでUTCの時刻情報をJST基準に変換する
最近の記事を読む
- Flutterでcontextを使わずにlocale情報を取得する
- Cloud RunでIAPを有効にしようとしてハマったこと
- タグマネージャーでjsのloadイベントを発火させたいとき
- mysqlコマンドを実行してERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)と言われたら
- 「ibproxyは、開発元を検証できないため開けません」の対処方法