For personal educational purposes I am making a site for a conference. One of the object that exist in a conference is a session, which has different states and in each state it has slightly different attributes: When submitted it has a speaker (User in the system), Title and abstract. When under review it has reviews and comments (in addition to the basic data) When accepted it has a defined time-slot but no reviewers anymore.I feel that it is not the best thing to add a status attributes and start adding many if statements...So I thought it would be better to have different classes for each state each with it's own validations and behaviors.What do you think about this design? Do you have a better idea?
Need advice on design in Ruby On Rails
design;object oriented;ruby;ruby on rails