Skip to Content Skip to Search

module ActionController::FormBuilder

Action Controller Form Builder

Override the default form builder for all views rendered by this controller and any of its descendants. Accepts a subclass of ActionView::Helpers::FormBuilder.

For example, given a form builder:

class AdminFormBuilder < ActionView::Helpers::FormBuilder
  def special_field(name)
  end
end

The controller specifies a form builder as its default:

class AdminAreaController < ApplicationController
  default_form_builder AdminFormBuilder
end

Then in the view any form using form_with or form_for will be an instance of the specified form builder:

<%= form_with(model: @instance) do |builder| %>
  <%= builder.special_field(:name) %>
<% end %>

Public instance methods

Default form builder for the controller

Source code GitHub
# File actionpack/lib/action_controller/form_builder.rb, line 51
def default_form_builder
  self.class._default_form_builder
end

Namespace

Definition files