Cody, This is a REALLY large list, so I recommend at this level of detailed question to StackOverflow. It is a great resource and lots of Django developers like to show off and write your code for you sometimes :-).
Short answers: There are ways to do custom inline forms: http://stackoverflow.com/questions/1559690/custom-form-in-inline-form and filtering the queryset many-to-many choices: http://stackoverflow.com/questions/291945/how-do-i-filter-foreignkey-choices-in-a-django-modelform Also, you can just add a module foreign key reference to Choice as well and set a unique_together constraint on choice + module. There are tradeoffs in all of these approaches. Brian Brian Schott [email protected] On Apr 10, 2013, at 4:30 PM, Cody Scott <[email protected]> wrote: > I also want to have the same question in multiple quizzes. But the count for > each option should be dependent on the Quiz. I can do the same thing to Quiz > in the admin and add Questions Inline but then to add Choices to the > Questions I need to go to the question panel and there will be a lot of > duplicate questions and it will hard to tell which question is for which quiz. > > I'm not even adding the Choices to the admin because there will be so many > duplicates, but I can't not add Question to the admin because I still need to > set choices. > > Is there a way to Inline 2 steps? So that I can set Choices for a Question > when I am making a Quiz? > > On Wednesday, 10 April 2013 13:38:14 UTC-4, Cody Scott wrote: > I am trying to store questions in a database. > I don't to set a fixed number of options for the question, some questions > could have 4 or 2 or 5. > > Currently I am using a ManyToManyField to a table that just contains a > CharField. > This works but creating an option requires making another Choice object and > selecting that, also when you want to select a Choice that has already been > created you have to use that little box in the admin and it doesn't scale > when you have hundreds of options. > > Even if I wanted to have 4 options every time what is the recommended way > without having four CharFields? > > class Choice(models.Model): > choice = models.CharField(max_length=255) > def __unicode__(self): > return self.choice > > #multiple choice question > class Question(models.Model): > question = models.CharField(max_length=64) > answer = models.CharField(max_length=255) > choices = models.ManyToManyField(Choice, related_name='questions', > verbose_name='options') > module = models.ForeignKey('Module', related_name='questions') > > times_correct = models.IntegerField(editable=False, default=0) > times_total = models.IntegerField(editable=False, default=0) > > def _get_average(self): > "Returns the average in percent" > if self.times_total != 0: > return (self.times_correct / float(self.times_total))*100 > return 0.0 > average = property(_get_average) > > def __unicode__(self): > return self.question > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/django-users?hl=en. > For more options, visit https://groups.google.com/groups/opt_out. > > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/django-users?hl=en. For more options, visit https://groups.google.com/groups/opt_out.

