Save correct answer with answer given by user
This commit is contained in:
parent
25856aa647
commit
a09bf2786d
|
|
@ -31,12 +31,25 @@
|
||||||
methods: {
|
methods: {
|
||||||
initSurvey(data, answer) {
|
initSurvey(data, answer) {
|
||||||
let survey = new SurveyVue.Model(data);
|
let survey = new SurveyVue.Model(data);
|
||||||
survey.data = answer;
|
const flatAnswers = {};
|
||||||
|
for (let k in answer) {
|
||||||
|
flatAnswers[k] = answer[k].answer;
|
||||||
|
}
|
||||||
|
survey.data = flatAnswers;
|
||||||
|
|
||||||
survey.onComplete.add((sender, options) => {
|
survey.onComplete.add((sender, options) => {
|
||||||
sender.clear(false);
|
// sender.clear(false);
|
||||||
|
//
|
||||||
|
// sender.mode = 'display';
|
||||||
|
|
||||||
sender.mode = 'display';
|
const data = {};
|
||||||
|
|
||||||
|
for (let k in survey.data) {
|
||||||
|
data[k] = {
|
||||||
|
answer: survey.data[k],
|
||||||
|
correct: sender.getQuestionByName(k).correctAnswer
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
this.$apollo.mutate({
|
this.$apollo.mutate({
|
||||||
mutation: UPDATE_ANSWER,
|
mutation: UPDATE_ANSWER,
|
||||||
|
|
@ -44,7 +57,7 @@
|
||||||
input: {
|
input: {
|
||||||
answer: {
|
answer: {
|
||||||
surveyId: this.id,
|
surveyId: this.id,
|
||||||
data: JSON.stringify(survey.data)
|
data: JSON.stringify(data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,10 @@ import logging
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.contrib.postgres.fields import JSONField
|
from django.contrib.postgres.fields import JSONField
|
||||||
from django.forms import widgets
|
from django.forms import widgets
|
||||||
|
from django.utils.html import format_html
|
||||||
|
from graphql_relay import to_global_id
|
||||||
|
|
||||||
|
from api.utils import get_object
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
@ -33,7 +37,11 @@ class JSONAdmin(admin.ModelAdmin):
|
||||||
|
|
||||||
@admin.register(Survey)
|
@admin.register(Survey)
|
||||||
class SurveyAdmin(JSONAdmin):
|
class SurveyAdmin(JSONAdmin):
|
||||||
pass
|
list_display = ('title', 'link',)
|
||||||
|
|
||||||
|
def link(self, obj):
|
||||||
|
return format_html('<a href="/survey/{id}" target="_blank">Link</a>', id=to_global_id('SurveyNode', obj.pk))
|
||||||
|
link.short_description = 'Link'
|
||||||
|
|
||||||
@admin.register(Answer)
|
@admin.register(Answer)
|
||||||
class AnswerAdmin(JSONAdmin):
|
class AnswerAdmin(JSONAdmin):
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue