.
This commit is contained in:
+34
-2
@@ -1,3 +1,4 @@
|
||||
from difflib import HtmlDiff
|
||||
from django.http import HttpResponse
|
||||
from django.shortcuts import get_object_or_404, render
|
||||
from django.views.generic.edit import UpdateView, CreateView
|
||||
@@ -77,7 +78,10 @@ def replace_questions(request):
|
||||
if not search or not replace:
|
||||
return HttpResponse("Please provide both search and replace values")
|
||||
|
||||
entries = Entry.objects.filter(questions__contains=search)
|
||||
if request.POST.get("exact", False):
|
||||
entries = Entry.objects.filter(questions=search)
|
||||
else:
|
||||
entries = Entry.objects.filter(questions__contains=search)
|
||||
|
||||
for entry in entries:
|
||||
entry.questions = entry.questions.replace(search, replace)
|
||||
@@ -85,4 +89,32 @@ def replace_questions(request):
|
||||
|
||||
return HttpResponse(f"{entries.count()} questions replaced")
|
||||
else:
|
||||
return render(request, "oef/replace_questions.html", {})
|
||||
return render(request, "oef/replace_questions.html", {})
|
||||
|
||||
def questions(request):
|
||||
questions = set(Entry.objects.all().values_list("questions", flat=True))
|
||||
|
||||
questions = sorted(questions, key=lambda x: len(x))
|
||||
|
||||
return render(request, "oef/questions.html", {"questions": questions})
|
||||
|
||||
def entries_by_question(request):
|
||||
|
||||
if request.method == "POST":
|
||||
question = request.POST.get("question")
|
||||
entries = Entry.objects.filter(questions=question)
|
||||
|
||||
return render(request, "oef/entries_by_question.html", {"entries": entries})
|
||||
|
||||
return HttpResponse("Please provide a question")
|
||||
|
||||
def questions_diff(request):
|
||||
if request.method == "POST":
|
||||
question1 = request.POST.get("question1")
|
||||
question2 = request.POST.get("question2")
|
||||
|
||||
html = HtmlDiff().make_table(question1.split("\n"), question2.split("\n"))
|
||||
|
||||
return HttpResponse(html)
|
||||
|
||||
return HttpResponse("Please provide two questions")
|
||||
Reference in New Issue
Block a user