Trying to convert a large application from our home brew PHP framework
to Ruby on Rails. I’ve built small things, like blogs and other CMS’s
with Rails, but am having a hard time thinking of a better way to
impliment some of our specific needs.
The big issues if our file overriding. We have a base application
that we start with and then do custom work per client on top of that.
We never change the base application though. Right now how it works
with our PHP framework is with the modules we have a “default” folder
with the base modules and a company specific folder that just inherits
from the base and overrides methods as needed. But the trickiest part
is the views. We didn’t want to duplicate all of the views just to
change one or two things. So it also has a default folder and a
company specific folder. If the file isn’t in the company specific
folder then it looks in the default. So we only have to duplicate and
modify a handful of files for each client.
I was hoping to use plugins or engines to accomplish this with Rails,
but the more I look into it the more it seems it wont go that far. In
fact, it seems it works the opposite of what I would like. Ideally we
would make the default app the “engine”, then create models,
controllers, and views to override the engine.
I highly doubt this is a unique problem. What would the Golden Path
with Rails be for this?