Hey! That's actually a great answer, and thats I what I generally started doing. I looked at all the info I have and asked myself: "Which of these sets of information would an admin want to manage?". From there for instance I thought about making a track model so that admins can easily add/delete as many tracks as they want, and so on.
I did however put applicant as belonging to a track and not has one. This has always confused me. Any idea why you want with a has_one relationship there? On Sat, Dec 22, 2012 at 1:52 PM, tamouse mailing lists < [email protected]> wrote: > On Thu, Dec 20, 2012 at 5:49 AM, why-el <[email protected]> wrote: > > Anyway, so the giant form has personal information section, language > > information section (The biggest part, about a page and a half, this > checks > > your current level of Arabic), and a track information section that > presents > > you all tracks and their fees and schedules for you to choose from. I am > > putting each section into its own step so the form will navigate three > > steps. > > > > Now, my question is, wouldnt it make more sense to break these into > > different models? One "application" model will be too big. For some > reason I > > can't reason about how to do this. What would the other models be? Does > it > > make sense to have a "language information" model that belongs to some > > student's application? > > Generally speaking, Models would correspond to how you would use the > information collected. You might wish to look at generalizing this > application a bit. > > so, there might be an "Applicant" model, a "Language Fluency" model, > which might be composed of language "Questions", a "Fluency Test" and > "Answers" models, and then there seems to be a "Track" model. > > Applicant might be: > -- Name(s) > -- Address > -- phone > -- email > ... etc > > has_one: Track > has_one: Fluency Test > > Language Fluency might be: > -- has_many: Questions > > Questions might be: > -- belongs_to Lanugage Fluency > -- question text > > Fluency Test might be: > -- belongs_to: Applicant > -- has_many: Answers > -- date completed > -- ... > > Answers might be: > -- belongs_to: Fluency Test > -- answer text > -- score /* ? */ > > Track might be: > -- title > -- fee > -- schedule /* (?) (not sure what you meant by schedule) */ > > anyway, that's the sort of way I'd approach it. > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- Mohamed Wael Khobalatte -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

