私はappのようなGoogleSurveyフォームを開発しており、フロントエンドユーザーにアンケートを作成させる必要があります。私は少しのガイドラインが必要です。私が必要とするのは、Django-adminのようなフォームを生成し、同じフォームを他のエンドユーザーからデータを収集するためにサイトで使用できるビューを構築することです。フロントエンドからDjangoアンケートフォームを作成
お知らせください。
私はappのようなGoogleSurveyフォームを開発しており、フロントエンドユーザーにアンケートを作成させる必要があります。私は少しのガイドラインが必要です。私が必要とするのは、Django-adminのようなフォームを生成し、同じフォームを他のエンドユーザーからデータを収集するためにサイトで使用できるビューを構築することです。フロントエンドからDjangoアンケートフォームを作成
お知らせください。
これは広範な質問のようなものですが、できる限り多くの詳細をカバーしようとします。 フォームビルダークラスには質問が含まれ、form_idはフォームのすべての質問を取得します。したがって、id = 1のフォームのすべての質問を取得したい場合は、簡単にフィルタリングできます。代わりに、フォームIDと作成者とフォームビルダーのみを含むフォームの追跡を保持するためのテーブルを作成することがあります。
データベースに保存:回答を保存するための方法
class FormBuilder(models.Model):
form_creator = models.ForeignKey(User)
form_id = models.AutoIncrementField()
question_text = models.TextField()
option_types = models.CharField(max_length=30) # drop down or text fields or some other
options = models.TextField(null=True) # this can be null for text field like answers and for multiple options it can be stored as comma seperated field
created_at = models.DateTimeField()
:
class FormResponses(models.Model):
form_id = models.ForeignKey(FormBuilder)
responses = models.TextField(null=True) # this follows the same analogies as options in FormBuilder
created_at = models.DateTimeField()
ビュー:ビューのために覚えておくべき事柄の
カップル:
例:
例の質問は次のようになります。
Q.これはどうですか? #question text Ans。フォームビルダーモデル でoption_type = textとoptions = nullがうまくいっています。それが選択基準の質問だった場合、 option_type=choices
とoptions=good, excellent, better
カンマ区切りの文字列としてリストされています。
回答モデルでは、応答はテキストフィールドなので、回答を入れることができます。
これは疑似コードに似ていますので、構文エラーに直面する可能性がありますが、これはあなたに要点を与えます。 Thisは、ゼロからソリューションを計画していない場合に役立ちます。
私はこの方法を試して、ユーザーは選択肢を選択できます。しかし、ユーザーが質問にフィールドに何かを入力する必要があるとき、私はそれを動作させることができませんでした。 –
これは、オプションタイプのフィールドが救助される場所です。このフィールドは、テキストフィールドの回答とオプションベースの回答を区別します。しかし、これはフロントエンド側でより多くの作業を行うでしょう。 @ShaziaNusrat –
あなたは私にあなたの与えたモデルのフォーム例を親切に教えてくれますか?私はそれを試し、それがうまくいくかどうか質問します。ありがとうございました –
ここで答えるには広すぎます。 –
私にそれを理解させるヒントを教えてください。または、GitHubのスニペットが素晴らしいでしょう。 –
3つのオプションで1つの質問のようにフォームを生成する方法を選択し、次に5つのオプションで2番目の質問をしたい場合は、 –