Module: Bootstrap5RailsExtensions::CardHelper
- Defined in:
- app/helpers/bootstrap5_rails_extensions/card_helper.rb
Defined Under Namespace
Classes: CardBuilder
Instance Method Summary collapse
-
#render_card(data: {}, **html_options) {|builder| ... } ⇒ Object
Bootstrapのcardコンポーネントを簡潔に記述できるDSL。.
Instance Method Details
#render_card(data: {}, **html_options) {|builder| ... } ⇒ Object
Bootstrapのcardコンポーネントを簡潔に記述できるDSL。
使い方:
<%= render_card class: "mb-4" do |card| %>
<% card.header class: "d-flex align-items-center" do %>
タイトル
<% end %>
<% card.body class: "p-4" do %>
本文...
<% end %>
<% card.footer class: "text-end" do %>
フッター
<% end %>
<% end %>
オプション:
class:
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'app/helpers/bootstrap5_rails_extensions/card_helper.rb', line 23 def render_card(data: {}, **) raise ArgumentError, "カードは本文を定義する必要があります" unless block_given? builder = CardBuilder.new(self) yield(builder) [:class] = class_names("card", [:class]) if data.present? [:data] = ([:data] || {}).merge(data) end content_tag(:div, **) do builder.render end end |