Rails3 Engines (mountable apps)

Hello,

I’ve a question about Rails 3 Engines. I’m looking everywhere for good
documentation on this subject, but didn’t find it.

I’m trying to create a mountable app (embedding a Rails application in
another Rails application). Both the ‘base’ application and the
‘embedded’ application are created with rails3.0.0.rc. To behave as
Engine the ‘embedded’ application has the following code in
‘lib/my_engine.rb’:

lib/my_engine.rb

require “my_engine”
require “rails”

module MyEngine
class Engine < Rails::Engine
end
end

In the Gemfile of the ‘base’ application I’ve included MyEngine as a
gem, using the path directive (to be able to change code without
rebuilding the gem).

Gemfile

gem “my_engine”, :path => “…/my_engine”

When I try to start the ‘base’ application it raises a NameError:

uninitialized constant MyEngine::Application (NameError)

Does anybody have good (Rails3 RC based) documentation on how to create
a mountable app?

And what would be the ‘Rails-way’ of solving this problem?

Kind regards,

Harm-Jan

sorry wrong forum…

On Aug 4, 8:33 am, “H.J. Blok” [email protected] wrote:

gem, using the path directive (to be able to change code without
a mountable app?

And what would be the ‘Rails-way’ of solving this problem?

Please look at enginex:

It creates an engine template for rails 3, generate one and take a
look comparing with your version.

Indeed there is no plenty of documentation, so you should inspect by
example.

Also, you will get more help and better responses in a Ruby on Rails
group/mailing list, like ror talk:

http://groups.google.com/group/rubyonrails-talk

HTH,

H.J. Blok wrote:

Luis L. wrote:

Please look at enginex:

GitHub - josevalim/enginex: An executable which creates a bare Rails 3 engine (which is used in Crafting Rails Applications)

It creates an engine template for rails 3, generate one and take a
look comparing with your version.

Thanks, I’ll try generating a Engine using enginex and compare it with
my version.

Do you know how to use enginex? I’ve tried, but there is no
documentation on usage (other than enginex NAME).

HJ

Luis L. wrote:

Please look at enginex:

GitHub - josevalim/enginex: An executable which creates a bare Rails 3 engine (which is used in Crafting Rails Applications)

It creates an engine template for rails 3, generate one and take a
look comparing with your version.

Thanks, I’ll try generating a Engine using enginex and compare it with
my version.

Also, you will get more help and better responses in a Ruby on Rails
group/mailing list, like ror talk:

http://groups.google.com/group/rubyonrails-talk

I already did (forgot to select Rails Forum while creating this topic).

HJ

On 4 August 2010 13:50, Luis L. [email protected] wrote:

‘lib/my_engine.rb’:
In the Gemfile of the ‘base’ application I’ve included MyEngine as a
Does anybody have good (Rails3 RC based) documentation on how to create
look comparing with your version.

Luis L.

I wish I saw that earlier.

Anyway, I did not find a lot of documentation about it, and so I did
test myself.

I created today a gem “app2engine” to convert the skeleton of a Rails
app to an Engine.

It seems very similar to enginex about the concept.

I use the standard path (so app/controllers for controllers), and so I
think it is using less configuration stuff.

Please have a look at it and file an issue if something goes wrong :wink:

Benoit D.

(Sorry for the noise on the Ruby list, I did not find the post on
rubyonrails-talk)

On Aug 4, 10:05 am, “H.J. Blok” [email protected] wrote:

Thanks, I’ll try generating a Engine using enginex and compare it with
my version.

Do you know how to use enginex? I’ve tried, but there is no
documentation on usage (other than enginex NAME).

That’s all, next you need to inspect the output of NAME

Benoit D. wrote:

Anyway, I did not find a lot of documentation about it, and so I did
test myself.

I created today a gem “app2engine” to convert the skeleton of a Rails
app to an Engine.

Yeah this one works. Enginex probably also works, but I simply don’t
understand how to use it.

I use the standard path (so app/controllers for controllers), and so I
think it is using less configuration stuff.

Please have a look at it and file an issue if something goes wrong :wink:

Great it works, thanks!

Harm-Jan

On Aug 4, 2010, at 04:33 , H.J. Blok wrote:

I’ve a question about Rails 3 Engines. I’m looking everywhere for good
documentation on this subject, but didn’t find it.

please send such queries in the future to the rails mailing list/forum.

Ryan D. wrote:

On Aug 4, 2010, at 04:33 , H.J. Blok wrote:

I’ve a question about Rails 3 Engines. I’m looking everywhere for good
documentation on this subject, but didn’t find it.

please send such queries in the future to the rails mailing list/forum.

I will, but I already mentioned I posted it here accidentally…

HJ