Rails Engine

Hi all,

I try to implement Rails Engine,

but i get following error

/home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/plugin.rb:87:in `block in <class:Plugin>': "Sub-Engine" is a Railtie/Engine and cannot be installed as a plugin (RuntimeError)   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/initializable.rb:30:in `instance_exec'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/initializable.rb:30:in `run'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/initializable.rb:55:in `block in run_initializers'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/initializable.rb:54:in `each'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/initializable.rb:54:in `run_initializers'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/application.rb:96:in `initialize!'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/railtie/configurable.rb:30:in `method_missing'   from /home/kingston/broking_workspace/Rails-Engine/config/ environment.rb:5:in `<top (required)>'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:240:in `require'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:240:in `block in require'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:223:in `block in load_dependency'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:640:in `new_constants_in'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:223:in `load_dependency'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ activesupport-3.1.3/lib/active_support/dependencies.rb:240:in `require'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/application.rb:83:in `require_environment!'   from /home/kingston/.rvm/gems/ruby-1.9.3-p0@rails-3.1.3-demo/gems/ railties-3.1.3/lib/rails/commands.rb:39:in `<top (required)>'   from script/rails:6:in `require'   from script/rails:6:in `<main>'

i am using rails 3.1 and ruby 1.9.3 please tell the solution on this..

Thanks

It looks like you keep you engine in vendor/plugins directory. Move it to some other directory and add to gemfile like this:

gem “engine_name”, :path => “./path/to/engine”

and you should be able to use it.

Please ask questions like this on the rubyonrails-talk mailing list. Core is reserved for discussion about the actual framework itself, rather than applications/engines built on top of it.

There’s also an engines guide you could read: http://guides.rubyonrails.org/engines.html