Custom default form builder in Rails 3

Hello everyone,

I am trying to set a default custom form builder. I have defined my form builder class in "lib/mymodule/mybuilder.rb" as:

module Mymodule   class Mybuilder < ActionView::Helpers::FormBuilder     ......   end end

Then I am trying to use this custom class in application.rb as config.action_view.default_form_builder = Mymodule::Mybuilder. But I get "Uninitialized constant error."

Does this mean that my module stored in "lib" directory is not loaded automatically?

Thanks in advance,

p.s. I am a newbie to Ruby and Rails as well. I can't really understand the module and class loading process in rails. I will appreciate if someone explains me a little bit which folders are loaded in initialization process, which I should "require 'someclass'" explicitly.

I gueuss it’s due to the fact your ‘lib/mymodule/mybuilder.rb’ isn’t required yet, do this in the config/environment.rb where you have the line:

config.action_view.default_form_builder = Mymodule::Mybuilder

C+++

evnironment.rb file doesn't contain any "config" instance or local variable. Edge rails documentation (Rails application configuration) suggests using:

config.action_view.default_form_builder = MyBuilder

inside application.rb file.

I just cant figure out Where to store my modules/classes in order to be able to set that configuration int application.rb file.

My mistake then, sorry for that.

So when you do a require ‘your/module’ in the application.rb doesn’t this works?