rails--rails/actiontext/test
Sean Doyle 3500571b43 Improve ActionText extensiblibility
Extensible layout
---

Expose how we render the HTML _surrounding_ rich text content as an
extensible `layouts/action_text/contents/_content.html.erb` template to
encourage user-land customizations, while retaining private API control
over how the rich text itself is rendered by moving the
`#render_action_text_content` helper invocation to the
`action_text/contents/_content.html.erb` partial.

Extensible Attachable `#to_attachable_partial_path`
---

When an application declares a canonical partial for a record, there is
no way to override which partial is used when transformed to Rich Text.
For example, a default `Person < ApplicationRecord` instance returns
`"people/person"` from calls to `#to_partial_path`, resulting in the
`app/views/people/_person.html.erb` partial being rendered.

Prior to this change, when encountering an `<action-text-attachment
sgid="...">` element, ActionText retrieved the corresponding
`Attachable` instance (usually an `ActiveRecord::Base` instance) and
transformed it to rich text HTML by rendering the partial that
corresponds to its `#to_partial_path`.

This proposed change instead invokes
`Attachable#to_attachable_partial_path`. By default,
`#to_attachable_partial_path` is an alias for `#to_partial_path`.

Guides
---

Extend the `guides/action_text_overview` document to
describe how to customize these templates, and to better illustrate how
ActionText::Attachable instances are rendered into HTML.
2020-12-29 20:06:45 -05:00
..
dummy Improve ActionText extensiblibility 2020-12-29 20:06:45 -05:00
fixtures Improve ActionText extensiblibility 2020-12-29 20:06:45 -05:00
integration Improve ActionText extensiblibility 2020-12-29 20:06:45 -05:00
system Locate `fill_in_rich_text_area` by `<label>` text 2020-10-02 18:02:14 -04:00
template Add value option to ActionView::Helpers::FormBuilder#rich_text_area 2020-09-01 21:43:07 -04:00
unit Fix rendering Action Text HTML in new threads 2020-12-07 16:41:44 -05:00
application_system_test_case.rb Add ActionDispatch::SystemTestCase#fill_in_rich_text_area 2019-05-13 12:44:06 -04:00
test_helper.rb Address "ArgumentError: missing keywords: :sql, :name" when unit tests run by ruby 3.0.0dev 2020-11-25 12:58:03 +09:00