sinnvolleres_speichern
This commit is contained in:
@@ -197,20 +197,18 @@ def new_quiz(request):
|
||||
|
||||
if request.method == 'POST':
|
||||
|
||||
|
||||
form = QuizForm(request.POST, request.FILES)
|
||||
try:
|
||||
uploaded_file = request.FILES["quiz_image"]
|
||||
quiz_img = QuizImage.objects.create(image=uploaded_file)
|
||||
except Exception:
|
||||
pass
|
||||
if form.is_valid():
|
||||
quiz = form.save(commit=False)
|
||||
|
||||
try:
|
||||
|
||||
quiz.image = quiz_img
|
||||
except Exception:
|
||||
quiz_image=request.FILES['quiz_image']
|
||||
imagequiz=QuizImage.objects.create(image=quiz_image)
|
||||
quiz.image=imagequiz
|
||||
|
||||
except:
|
||||
pass
|
||||
|
||||
|
||||
quiz.user_id = request.user
|
||||
#quiz.creator = request.user
|
||||
@@ -229,19 +227,27 @@ def edit_quiz(request, pk):
|
||||
if request.method == 'POST':
|
||||
form = QuizForm(request.POST, instance=quiz, files=request.FILES)
|
||||
if form.is_valid():
|
||||
try:
|
||||
|
||||
uploaded_file = request.FILES["quiz_image"]
|
||||
quiz_img = QuizImage.objects.create(image=uploaded_file)
|
||||
quiz.image = quiz_img
|
||||
quiz.save()
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
if 'reset_image' in request.POST:
|
||||
quiz.image = None
|
||||
|
||||
try:
|
||||
quiz_image=request.FILES['quiz_image']
|
||||
imagequiz=QuizImage.objects.create(image=quiz_image)
|
||||
quiz.image=imagequiz
|
||||
|
||||
|
||||
except:
|
||||
pass
|
||||
|
||||
|
||||
|
||||
form.save()
|
||||
for img in QuizImage.objects.all():
|
||||
try:
|
||||
img.delete()
|
||||
except:
|
||||
pass
|
||||
return redirect('library:detail_quiz', pk=pk)
|
||||
#return modified(request, pk)
|
||||
|
||||
@@ -254,11 +260,19 @@ def edit_quiz(request, pk):
|
||||
def delete_quiz(request, pk):
|
||||
quiz = get_object_or_404(QivipQuiz, pk=pk, user_id=request.user)
|
||||
if request.method == 'POST':
|
||||
if quiz.image:
|
||||
quiz.image = None # Entfernt das Bild aus der Datenbank, aber löscht es nicht
|
||||
quiz.save() # Speichere die Änderungen in der Datenbank
|
||||
|
||||
quiz.delete()
|
||||
for img in QuizImage.objects.all():
|
||||
try:
|
||||
img.delete()
|
||||
img.image.delete(save=False)
|
||||
except:
|
||||
pass
|
||||
for img in QuestionImage.objects.all():
|
||||
try:
|
||||
img.delete()
|
||||
img.image.delete(save=False)
|
||||
except:
|
||||
pass
|
||||
|
||||
return redirect('library:overview_quiz')
|
||||
return render(request, 'library/delete_confirmation.html', {'object': quiz})
|
||||
@@ -309,6 +323,7 @@ def copy_quiz(request, pk):
|
||||
question.pk = None # Setze pk auf None, damit es als neues Objekt gespeichert wird
|
||||
question.quiz_id = original_quiz # Verknüpfe mit dem neuen Quiz
|
||||
question.data = question.data # `data`-Feld wird explizit übernommen # Verknüpfe mit dem neuen Quiz
|
||||
|
||||
question.save()
|
||||
|
||||
messages.success(request, "Quiz wurde erfolgreich kopiert!")
|
||||
@@ -349,7 +364,6 @@ def new_question(request):
|
||||
|
||||
if request.method == 'POST':
|
||||
question_text = request.POST.get('question', '')
|
||||
question_image = request.FILES.get('question_image', None)
|
||||
|
||||
# Handle different question types
|
||||
if question_type == 'true_false':
|
||||
@@ -389,17 +403,10 @@ def new_question(request):
|
||||
question = QivipQuestion()
|
||||
question.data = json.dumps(json_data)
|
||||
question.quiz_id = quiz
|
||||
if request.method == 'POST':
|
||||
try:
|
||||
question_image = request.FILES['question_image']
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
try:
|
||||
if question_image:
|
||||
question_img = QuestionImage.objects.create(image=question_image) # Erstelle das QuestionImage-Objekt
|
||||
question.image = question_img # Weise es dem Bildfeld zu
|
||||
question.save()
|
||||
question_image=request.FILES['question_image']
|
||||
imagequestion=QuestionImage.objects.create(image=question_image)
|
||||
question.image=imagequestion
|
||||
except:
|
||||
pass
|
||||
|
||||
@@ -500,7 +507,9 @@ def edit_question(request, pk):
|
||||
if request.method == 'POST':
|
||||
question_text = request.POST.get('question', '')
|
||||
try:
|
||||
question_image = request.FILES['question_image']
|
||||
question_image=request.FILES['question_image']
|
||||
imagequestion=QuestionImage.objects.create(image=question_image)
|
||||
question.image=imagequestion
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
@@ -545,16 +554,14 @@ def edit_question(request, pk):
|
||||
|
||||
question.data = json.dumps(json_data)
|
||||
question.time_per_question = request.POST.get('time_per_question', '30')
|
||||
try:
|
||||
if question_image:
|
||||
question_img = QuestionImage.objects.create(image=question_image) # Erstelle das QuestionImage-Objekt
|
||||
question.image = question_img # Weise es dem Bildfeld zu
|
||||
question.save()
|
||||
except:
|
||||
pass
|
||||
|
||||
|
||||
question.save()
|
||||
for img in QuestionImage.objects.all():
|
||||
try:
|
||||
img.delete()
|
||||
except:
|
||||
pass
|
||||
#return modified(request, question.quiz_id.pk)
|
||||
return redirect('library:detail_quiz', pk=question.quiz_id.pk)
|
||||
|
||||
@@ -582,5 +589,10 @@ def delete_question(request, pk):
|
||||
|
||||
if request.method == 'POST':
|
||||
question.delete()
|
||||
for img in QuestionImage.objects.all():
|
||||
try:
|
||||
img.delete()
|
||||
except:
|
||||
pass
|
||||
return redirect('library:detail_quiz', pk=question.quiz_id.pk)
|
||||
return render(request, 'library/delete_confirmation.html', {'object': question})
|
||||
|
||||
Reference in New Issue
Block a user