さまざまなことについて満足できるレベルの情報を保持しなければならない会社のためのシステムを作っています。固定のQ&しかし、私は彼らが質問を変更したり追加したりする必要があると確信しています。Djangoでカスタマイズ可能なユーザーアンケートを作成する方法
私は、ユーザーが定義したカスタムの質問で構成されるカスタム評価スキーマを作成できるシステムを作りたいと考えています。このようなデザインを作るにはどうすればいいですか?
今の私のモデルは、このですが、間違っている:
RATING_CHOICES = ((0, u"Good"), (1, u"Bad"), (2, u"Dunno"),)
class EvaluationScheme(models.Model):
title = models.CharField(max_length=200)
class Evaluation(models.Model):
doctor = models.CharField(max_length=200)
agency = models.CharField(max_length=200)
scheme = models.ForeignKey(EvaluationScheme)
class EvaluationQuestion(models.Model):
question = models.CharField(max_length=200)
evaluation = models.ForeignKey(EvaluationScheme)
def __unicode__(self):
return self.question
class EvaluationAnswer(models.Model):
evaluation = models.ForeignKey(Evaluation)
question = models.ForeignKey(EvaluationQuestion)
answer = models.SmallIntegerField(choices=RATING_CHOICES)
あなたはまだすべての質問を選択することがあり、自分自身に答えるため、これは、EvaluationSchemeは無用であることを除いて、私が欲しいものの一種である - それはありません選択したスキーマに関連する質問のみのリストを表示しません。
あなたの貢献に感謝いたします。しかし、問題は複数のEvaluationSchemeを追加するときです。作成されたスキームに関連する質問だけでなく、すべての質問に答えることができます。 少なくとも管理インタフェースを使用しているときの問題です。しかし、多分私はそれらのフォームでAJAXをやる必要があります。 –
ここで自分のコードを使用する場合は、そのような問題はありません。私のコードのキーラインは、この評価のためのスキームに関連する質問だけをつかむ "evaluation.scheme.evaluationquestion_set.all()の質問"です。コードにそのような行がない場合は、報告した問題が発生します。 – krubo