Module: ActionText::TagHelper
- Defined in:
- app/helpers/action_text/tag_helper.rb
Instance Method Summary collapse
-
#rich_textarea_tag(name, value = nil, options = {}, &block) ⇒ Object
(also: #rich_text_area_tag)
Returns a ‘trix-editor` tag that instantiates the Trix JavaScript editor as well as a hidden field that Trix will write to on changes, so the content will be sent on form submissions.
Instance Method Details
#rich_textarea_tag(name, value = nil, options = {}, &block) ⇒ Object Also known as: rich_text_area_tag
Returns a ‘trix-editor` tag that instantiates the Trix JavaScript editor as well as a hidden field that Trix will write to on changes, so the content will be sent on form submissions.
#### Options
-
‘:class` - Defaults to “trix-content” so that default styles will be applied. Setting this to a different value will prevent default styles from being applied.
-
‘[:data]` - Defaults to `rails_direct_uploads_url`.
-
‘[:data]` - Defaults to `rails_service_blob_url(“:signed_id”, “:filename”)`.
#### Example
rich_textarea_tag "content", .content
# <input type="hidden" name="content" id="trix_input_post_1">
# <trix-editor id="content" input="trix_input_post_1" class="trix-content" ...></trix-editor>
rich_textarea_tag "content", nil do
"<h1>Default content</h1>"
end
# <input type="hidden" name="content" id="trix_input_post_1" value="<h1>Default content</h1>">
# <trix-editor id="content" input="trix_input_post_1" class="trix-content" ...></trix-editor>
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'app/helpers/action_text/tag_helper.rb', line 36 def rich_textarea_tag(name, value = nil, = {}, &block) value = capture(&block) if value.nil? && block_given? = .symbolize_keys form = .delete(:form) [:input] ||= "trix_input_#{ActionText::TagHelper.id += 1}" [:class] ||= "trix-content" [:data] ||= {} [:data][:direct_upload_url] ||= main_app.rails_direct_uploads_url [:data][:blob_url_template] ||= main_app.rails_service_blob_url(":signed_id", ":filename") editor_tag = content_tag("trix-editor", "", ) input_tag = hidden_field_tag(name, value.try(:to_trix_html) || value, id: [:input], form: form) input_tag + editor_tag end |