Problem with Custom Form Builder

I created my custom form builder (which inherits rails built-in form builder) name spaced under my app module. I also assigned this form builder to be the default action view form builder in the environment.rb. When I am starting the server, rails is throwing different errors some times saying unexpected kDEF expecting "<" or "\n" or ";" or some times saying unxpected $end expecting "<" or "\n" or ";"

Following is the implementation of my code.

lib/my_app.rb module MyApp VERSION = 1 end

lib/my_app/form_builder.rb require 'my_app' module MyApp class FormBuilder < ActionView::Helpers::FormBuilder include MyApp::FormHelper end #end of class end #end of module

lib/my_app/form_helper.rb require 'my_app' module MyApp module FormHelper < ActionView::Helpers::FormHelper end #end of module FormHelper end #end of module MyApp

and at the end of environment.rb (after initializer) ActionView::Base.default_form_builder = MyApp::FormBuilder

Why is Rails not accepting my FormBuilder when I nest it under MyApp module?

Btw: If I declare the FormBuilder as a standalone class, its working.

Thanks in advance. -Satynos

You're making a module inherit from a class and this is wrong.

Here's an example of building a custom form builder -> http://onrails.org/articles/2008/06/13/advanced-rails-studio-custom-form-builder

Mauricio:

Thanks for the reponse. I didn't quite get what you mean by I am making a module inherit from a class.

MyAPP - is top level module MyApp::FormBuilder - is class within my module MyApp and inherits from builtin rails FormBuilder class MyApp::FormHelper - is module within my module MyApp.

I don't see where my class is being inherited from module.

thanks in advance. -Satynos

MaurĂ­cio Linhares wrote:

Mauricio:

Thanks for the reponse. I didn't quite get what you mean by I am making a module inherit from a class.

MyAPP - is top level module MyApp::FormBuilder - is class within my module MyApp and inherits from builtin rails FormBuilder class MyApp::FormHelper - is module within my module MyApp.

I don't see where my class is being inherited from module.

You've written

module FormHelper < ActionView::Helpers::FormHelper end

which doesn't make any sense - modules can't inherit from anything.

Fre