Hallo liebes Community,
vorab ich bin schon seit x Stunden das Problem zu lösen, aber bis jetzt bin ich vergänglich gescheitert. Ihr seit Tmm eine letzte Öffnung.
Ich bin aktuell in einem Projekt beteiligt, bei dem wir ein Quiz-Spiel entwickeln. Ich bin für das backend zuständig.
Wir wollen, dass die User auch fragen ins Spiel einfügen können, wenn ein User eine Frage hinzufügt, soll diese allerdings bevor die Frage in der Datenbank gespeichert werden. Sobald der User eine Frage hinzufügt bekommt der Admin eine email: „es ist eine neue Frage eingegangen“, und in der Email ist ein link der auf eine html Seite (approve_question.html) weiter Leiter. Bis hier hin funktioniert alles. Allerdings führt der link nur auf eine leere html Seite. Ich möchte, dass die hinzugefügte Frage, dann auf der approve_question.html aufgezeigt wird, damit der Admin nach der Kontrolle in der Datenbank speichern kann, so dass die Frage im Spiel dann angezeigt wird.mein Problem ist, ich kann die Seite question.html (hier kann dann die Frage mit vier antworten eingegeben werden) nicht, mit dem Inhalt weiter an die approve_question.html senden. Ich füge noch einen Teil vom Code, damit klarer ist.
Die question.html hat ein Feld für die Fragen und vier für die Antworten. Das alles möchte ich ausgefüllt weiterleiten an approve_question.html
views.py
def questions(request):
form = addQuestionform()
if (request.method == 'POST'):
form = addQuestionform(request.POST)
if (form.is_valid()):
form.save(commit=False)
html = render_to_string("notification_email.html")
send_mail('The contact form subject', 'This is the message', 'noreply@codewithstein.com', ['example@gmail.com'],
html_message=html)
return redirect("login")
context = {'form': form}
return render(request, 'addQuestion.html', context)
def approve_questions(request):
return render(request, "approve_question.html")
„““
approve_questions.html
I wanna to get the content from question.html here
currently empty
„““
question.html
here is the form
{% extends 'dependencies.html' %}
{% block content %}
<div class="jumbotron container row">
<div class="col-md-6">
<h1>Add Question</h1>
<div class="card card-body">
<form action="" method="POST" id="form">
{% csrf_token %}
{{form.as_p}}
<br>
<input type="submit" name="Submit">
</form>
</div>
</div>
</div>
{% endblock %}
Inhalt von einer html Seite in eine andere senden
Eingerückt wird immer mit 4 Leerzeichen pro Ebene, nicht mal 4 und mal 8. Die Klammern um die if-Bedingungen sind überflüssig und können weg.
Leerzeilen können die Lesbarkeit erhöhen, oder verringern, wenn sie eine Funktion an nicht logischen Stellen in mehrere Teile zerreißen. Innerhalb einer Funktion ist an wenigen strategischen Stellen EINE Leerzeile erlaubt, niemals zwei hintereinander.
Du willst die eingegebene Frage nicht in der Datenbank speichern, sondern an einen Admin schicken? Dann muß der natürlich auf anderem Weg die Frage bekommen, indem man z.B. die ganze Information als URL-Parameter mitgibt. Du gibst aber render_to_string gar keine weitere Information mit.
Eine bessere Alternative wäre es, die Fragen bereits in der Datenbank zu speichern und mit einem Flag approved=False zu versehen. Dann reicht es, die passende Datenbank-ID in die eMail zu packen und für den Admin könnte man eine Seite machen, auf der er alle noch nicht geprüften Fragen sehen kann.
Leerzeilen können die Lesbarkeit erhöhen, oder verringern, wenn sie eine Funktion an nicht logischen Stellen in mehrere Teile zerreißen. Innerhalb einer Funktion ist an wenigen strategischen Stellen EINE Leerzeile erlaubt, niemals zwei hintereinander.
Du willst die eingegebene Frage nicht in der Datenbank speichern, sondern an einen Admin schicken? Dann muß der natürlich auf anderem Weg die Frage bekommen, indem man z.B. die ganze Information als URL-Parameter mitgibt. Du gibst aber render_to_string gar keine weitere Information mit.
Eine bessere Alternative wäre es, die Fragen bereits in der Datenbank zu speichern und mit einem Flag approved=False zu versehen. Dann reicht es, die passende Datenbank-ID in die eMail zu packen und für den Admin könnte man eine Seite machen, auf der er alle noch nicht geprüften Fragen sehen kann.
Einrückungen? Welche Einrückungen? Bei mir wird der Code komplett ohne Einrückungen angezeigt! Auch bei manch anderen Postings. Liegt es an meinen Forums-Einstellungen?
Aha, so geht das! Danke! (nun bin ich hier auch wieder weg mit meinem Off-Topic-Thema)