ri > ActionView::RecordIdentifier

= ActionView::RecordIdentifier

------------------------------------------------------------------------
= Extended by:
ModelNaming (from /home/chedong/.local/share/rdoc)

(from /home/chedong/.local/share/rdoc)
------------------------------------------------------------------------
RecordIdentifier encapsulates methods used by various ActionView helpers
to associate records with DOM elements.

Consider for example the following code that form of post:

  <%= form_for(post) do |f| %>
    <%= f.text_field :body %>
  <% end %>

When post is a new, unsaved ActiveRecord::Base instance, the resulting
HTML is:

  <form class="new_post" id="new_post" action="/posts" accept-charset="UTF-8" method="post">
    <input type="text" name="post[body]" id="post_body" />
  </form>

When post is a persisted ActiveRecord::Base instance, the resulting HTML
is:

  <form class="edit_post" id="edit_post_42" action="/posts/42" accept-charset="UTF-8" method="post">
    <input type="text" value="What a wonderful world!" name="post[body]" id="post_body" />
  </form>

In both cases, the id and class of the wrapping DOM element are
automatically generated, following naming conventions encapsulated by
the RecordIdentifier methods #dom_id and #dom_class:

  dom_id(Post.new)         # => "new_post"
  dom_class(Post.new)      # => "post"
  dom_id(Post.find 42)     # => "post_42"
  dom_class(Post.find 42)  # => "post"

Note that these methods do not strictly require Post to be a subclass of
ActiveRecord::Base. Any Post class will work as long as its instances
respond to to_key and model_name, given that model_name responds to
param_key. For instance:

  class Post
    attr_accessor :to_key

    def model_name
      OpenStruct.new param_key: 'post'
    end

    def self.find(id)
      new.tap { |post| post.to_key = [id] }
    end
  end
------------------------------------------------------------------------
= Constants:

JOIN:
  [not documented]

NEW:
  [not documented]


= Instance methods:

  dom_class
  dom_id
  record_key_for_dom_id

Generated by phpman v4.9.26-1-g511901d · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-30 07:51 @216.73.217.106
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!