Ezra: Thank you for that insight.... It's a really neat way of thinking about things. Here's one issue that we face: The "advising" application allows faculty to see all kinds of student data. Of course, students wouldn't be "advising" themselves, so they would get at the data through a different method. Grade Checking would be separate, but would need to be called from within Advising (I want to see your grades and I am your advisor). Normally, I'd just render partial and get what I need. How would I do that if the apps are separate? I would think that separate apps would be easier to maintain... .Developer A wouldn't need to check out the whole big app just to work on his Advising piece. However, is there a better way to build this in pieces and still keep it all together? Thanks again!
on 2006-01-03 21:39
on 2006-01-03 22:28
On Jan 3, 2006, at 11:38 AM, Hogan, Brian P. wrote: > be separate, but would need to be called from within Advising (I > pieces and still keep it all together? > > Thanks again! Well if your separate rails applications need to share the same models for some sections then you could still use a centralized database for all the applications and you could keep your models in sync via svn:externals so that each one of your apps can use the same models and they can all be kept up to date throughout all projects. This could work in a similar way for shared views/partials if you want to really keep DRY. As far as if you need to render a section from a different app as i often do, you can set up some proxy methods. Define a fetch_remote_action defined in your application.rb or in a helper that uses open-uri and localhost to grab pages and actions from other apps and slurp the text in to be rendered inline with your other info from the local app. I think that you will have a much easier time if you keep these apps as separate rails apps and tie together the code that spans multiple apps with svn:externals so they stay in sync with each other. If you keep all your models sync over each app, you will just be dealing with controllers and views for each different app. But you will still have access to any part of your domain model since all models are available to all apps. Cheers- -Ezra Z. Yakima Herald-Republic WebMaster http://yakimaherald.com 509-577-7732 firstname.lastname@example.org