1. Accounts suchen
2. Accounts anzeigen
3. Accounts zusammenführen und
4. leere Accounts löschen
... das funktioniert schon fast. Die gefundenen Accounts werden angezeigt, wenn ich aber in der zweiten Runde Accounts zusammenführen will, wird in der Liste der Accounts alle Accounts angezeigt, da in der Suchenmaske die Einträge verlorengegangen sind. Wie gebe ich die wieder zurück wenn ich forms nutze? Also so irgendwie:
Code: Alles auswählen
<input id="your_name" type="text" name="your_name" value="{{ current_name }}">
Template:
Code: Alles auswählen
<h2> Accounts zusammenführen und löschen</h2>
<h3>1. Schritt: User suchen:</h3>
<form action="/zusammenfuehren/" method="post">
<table>
{% csrf_token %}
{{ suchen_form.as_table }}
</table>
<input type="submit" value="suchen">
</form>
<h3>2. Schritt: Account aussuchen:</h3>
<table>
<thead>
<tr>
<th>Username</th>
<th>ID</th>
<th>Aufgaben</th>
<th>letzter Login</th>
<th>Vorname</td>
<th>Nachname</td>
<th>Lerngruppe</td>
</tr>
</thead>
<tbody>
{% for profil, anz in zeilen %}
<tr>
<td>{{profil.user.username }}</td>
<td>{{profil.user.id }}</td>
<td>{{anz }}</td>
<td>{{profil.user.last_login }}</td>
<td>{{profil.vorname }}</td>
<td>{{profil.nachname }}</td>
<td>{{profil.gruppe }}</td>
{% endfor %}
</body>
</table>
<h3>3. Schritt: Accounts zusammenfassen:</h3>
<form action="/zusammenfuehren/" method="post">
{% csrf_token %}
{{ zusammen_form }}
<input type="submit" value="Accounts zusammenführen">
</form>
<h3>4. Schritt: Accounts löschen:</h3>
<form action="/zusammenfuehren/" method="post">
{% csrf_token %}
{{ loeschen_form }}
<input type="submit" value="Account löschen">
</form>
Code: Alles auswählen
class Suchen_Form(forms.Form):
vorname = forms.CharField(label="Vorname", max_length=50, required=False)
nachname = forms.CharField(label="Nachname", max_length=50, required=False)
Code: Alles auswählen
def zusammenfuehren(req):
if not req.user.is_superuser:
return HttpResponse("Zugriff verweigert")
suchen_form = Suchen_Form()
loeschen_form = Loeschen_Form
zusammen_form = Zusammen_Form
vorname = nachname = ""
zeilen = []
# if this is a POST request we need to process the form data
if req.method == "POST":
suchen_form = Suchen_Form(req.POST)
if suchen_form.is_valid():
vorname = suchen_form.cleaned_data['vorname']
nachname = suchen_form.cleaned_data['nachname']
profil = Profil.objects.filter(vorname__contains=vorname, nachname__contains=nachname)
for a in profil:
aufgaben = Protokoll.objects.filter(user__id = a.pk).count()
zeilen.append((a, aufgaben))
loeschen_form = Loeschen_Form(req.POST)
if loeschen_form.is_valid():
loeschen = loeschen_form.cleaned_data['loeschen']
print(loeschen)
zusammen_form = Zusammen_Form(req.POST)
if zusammen_form.is_valid():
quelle = zusammen_form.cleaned_data['quelle']
ziel = zusammen_form.cleaned_data['ziel']
print(quelle)
context = {"suchen_form": suchen_form, "loeschen_form": loeschen_form, "zusammen_form": zusammen_form, "zeilen" : zeilen, "vorname": vorname, "nachname": nachname,}
return render(req, 'zusammen.html', context)
