I am designing a portal for a "digital magazine" within travel, and would like to ask for advice on the design.
With digital magazine, I mean a portal with lots of editorial content and commentary on a variety of topics, e.g. arranged in sections for each continent, special topics like airlines, hotels etc. I would like to serve these articles from the database, probably caching them on the way, very similar to how e.g. Mephisto Blog is constructed. REST- ful URLs seem nice, e.g.
http://site.com/category/subcategory/articleID-articlename
That I could have accomplished with Mephisto, more or less. But certain pages on the magazine portal will be special. For example, in one category I may wish to put up "classified ads" listings from a special database, on another an interactive map, etc.
So how would you design a site where certain articles would be straight markup, and others requiring a special controller, while maintaining a homogenous page structure and letting me edit and rearrange articles dynamically?
I was thinking of making a Page object, which includes standard things like page name, title, category / subcategory and then a field indicating which controller should handle the page, e.g. an "article" controller for standard pages, a "classified ads" controller for others and so forth. Page objects are then used to generate dynamic menus, and requests to construct a specific page forwarded to the assigned controller.
Does it make sense, or does anyone have another solution to share? Perhaps I am missing an obvious Railsy way to solve this? I'd be really grateful for help.