On Thu, Dec 20, 2012 at 5:49 AM, why-el <
wael.kh...@gmail.com> 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.