Hi In my app , a user can create a set of question then a table is dynamily created , in the database,to store the answers of the questions. the name of the table is answers_x (x is the id of the questionniare). Is it possible to dynamicly create a model, to handle the answer_x tables ?? I can''t manually create a model then restart the server. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
jef wrote:> Hi > > In my app , a user can create a set of question then a table is > dynamily created , in the database,to store the answers of the > questions. the name of the table is answers_x (x is the id of the > questionniare). > > Is it possible to dynamicly create a model, to handle the answer_x > tables ?? I can''t manually create a model then restart the server.Why a different table per set of questions? Sounds like what you need is actually are more generic models (Quizzes and Quizitems?) that stores lists of questions and answers. Assuming you have a User model defined somewhere else... User has_many :quizzes Quiz belongs_to :user has_many :quizitems Quizitem belongs_to :quiz where a quizitem contains a question and an answer... maybe points if you''re scoring them somehow. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
jef wrote:>> where a quizitem contains a question and an answer... maybe points if >> you''re scoring them somehow. > > a question is asked to a lot of people. For a quizitem there are many > answers. > > We don''t know by advance the type of the answer. It may be an integer, > (what is the age of the captain) or a string (what is the name of the > captain). > > It''s up to the end user. He defines the quizz. and other people answer > to that quizz.Hmm... then the end user can define the expected type of the response: number, text, date, time, whatever. User has_many :questions Question belongs_to :user has_many :answers # question has a prompt, also has a ''type'' for the answer. You can store all the answers as string, and just run a validation of an answer according to the expected ''type'' for the response. if the expected type is a number, take the answer text and see if it can convert cleanly to a number. Perhaps a polymorphic Answer where you can have a numeric answer, a text answer, etc. Answer belongs_to :question # answer has text in it -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
If you really do want to do this, you can do it with the eval method. eval will execute a string as ruby code. Julian. Learn Ruby on Rails! Check out the FREE VIDS (for a limited time) VIDEO #4 parts a and b now available! http://sensei.zenunit.com/ On 09/05/2008, at 10:11 PM, jef wrote:> > Hi > > In my app , a user can create a set of question then a table is > dynamily created , in the database,to store the answers of the > questions. the name of the table is answers_x (x is the id of the > questionniare). > > Is it possible to dynamicly create a model, to handle the answer_x > tables ?? I can''t manually create a model then restart the server. > >--~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
can you give me an example julian I know that eval(''puts "foo"'') print the the foo string. But I don''t know how to generate a new model. Thank you. On 9 mai, 18:42, Julian Leviston <jul...-AfxEtdRqmE/tt0EhB6fy4g@public.gmane.org> wrote:> If you really do want to do this, you can do it with the eval method. > > eval will execute a string as ruby code. > > Julian. > > Learn Ruby on Rails! Check out the FREE VIDS (for a limited time) > VIDEO #4 parts a and b now available!http://sensei.zenunit.com/ > > On 09/05/2008, at 10:11 PM, jef wrote: > > > > > Hi > > > In my app , a user can create a set of question then a table is > > dynamily created , in the database,to store the answers of the > > questions. the name of the table is answers_x (x is the id of the > > questionniare). > > > Is it possible to dynamicly create amodel, to handle the answer_x > > tables ?? I can''t manually create amodelthen restart the server.--~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Generating a new model for each question is not the right way to do this. I feel you are making things way too hard. There is no reason you can''t just use a solution similar to what Ar Chron explained. In short, create a Question and Answer model. Just store the answers as string and the questions as strings and then store the type of the question / answer as well and simply cast the answer to the type. or go the polymorphic route and have an answer model for each possible answer type. Bottom line, creating arbitrary dynamic models for each question is simply not the path to take. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---