1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
Ruby on Rails
Find a file
2018-06-07 14:39:09 +02:00
app Provide to_html rendering within a layout and use that as the to_s default 2018-06-07 14:38:41 +02:00
bin Pull activetext.js into dummy app with webpacker 2018-02-12 10:34:29 -05:00
db/migrate Use mediumtext-size columns 2018-05-29 16:24:48 +02:00
lib Some basic documentation for the has_rich_text macro 2018-06-07 14:39:09 +02:00
test We are leveling up the text_area, not the text_field, so match names 2018-06-05 16:20:55 +02:00
.gitattributes Initial commit 2018-02-07 12:43:36 -06:00
.gitignore Pull activetext.js into dummy app with webpacker 2018-02-12 10:34:29 -05:00
.ruby-version Tests: Add Message scaffolding 2018-02-08 16:02:16 -05:00
actiontext.gemspec Missed a spot 2018-04-13 16:26:19 -07:00
Gemfile Add dummy app 2018-02-08 11:01:46 -06:00
Gemfile.lock Use actiontext references in Gemfile.lock 2018-05-28 17:14:27 +02:00
LICENSE Initial commit 2018-02-07 12:43:36 -06:00
package.json Reference action text for js packaging 2018-05-28 18:07:55 +02:00
Rakefile Rename from Active Text to Action Text 2018-04-13 16:23:04 -07:00
README.md We are leveling up the text_area, not the text_field, so match names 2018-06-05 16:20:55 +02:00
yarn.lock Add initial ActiveStorage integration 2018-02-12 15:50:42 -05:00

Action Text

🤸‍♂️💰📝

Installing

Assumes a Rails 5.2+ application with Active Storage and Webpacker installed.

  1. Install the gem:

    # Gemfile
    gem "activetext", github: "basecamp/activetext", require: "action_text"
    gem "mini_magick" # for Active Storage variants
    
  2. Install the npm package:

    // package.json
    "dependencies": {
      "activetext": "basecamp/activetext"
    }
    
    $ yarn install
    
    // app/javascript/packs/application.js
    import "activetext"
    
  3. Declare text columns as Action Text attributes:

    # app/models/message.rb
    class Message < ActiveRecord::Base
      has_rich_text :content
    end
    
  4. Replace form text_areas with rich_text_areas:

    <%# app/views/messages/_form.html.erb %>
    <%= form_with(model: message) do |form| %>
      …
      <div class="field">
        <%= form.label :content %>
        <%= form.rich_text_area :content %>
      </div>
      …
    <% end %>