[PYTHON] Todo-App mit Django erstellen ⑤ Funktion zum Bearbeiten von Aufgaben erstellen

Als nächstes erstellen wir eine Aufgabenbearbeitungsfunktion.

Liste der Artikel

Erstellen einer Todo-App mit Django ① Erstellen einer Umgebung mit Docker Todo-App mit Django erstellen ② Seite mit Ordnerliste erstellen Todo-App mit Django erstellen ③ Seite mit Aufgabenliste erstellen Todo-App mit Django erstellen ④ Ordner- und Aufgabenerstellungsfunktion implementieren Erstellen einer Todo-App mit Django ⑤ Erstellen einer Aufgabenbearbeitungsfunktion

URL-Einstellungen

Stellen Sie zuerst die URL ein. Fügen Sie den folgenden Satz zu "todo / urls.py" hinzu.

todo/urls.py


path('<int:id>/tasks/<int:task_id>', views.edit_task, name='tasks.edit')

Link einfügen

Fügen Sie den Link wie unten gezeigt in den Teil "Bearbeiten" von "templates / index.html" ein.

templates/index.html


<a href="{% url 'tasks.edit' id=current_folder_id task_id=task.id %}}">Bearbeiten</a>

Vorlage

Erstellen Sie "edit.html" im Verzeichnis "templates". Bearbeiten Sie dann "edit.html" wie folgt.

templates/edit.html


{% extends 'base.html' %}

{% block styles %}
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
  <link rel="stylesheet" href="https://npmcdn.com/flatpickr/dist/themes/material_blue.css">
{% endblock %}

{% block content %}
  <div class="container">
    <div class="row">
      <div class="col col-md-offset-3 col-md-6">
        <nav class="panel panel-default">
          <div class="panel-heading">Aufgabe bearbeiten</div>
          <div class="panel-body">
            <form method="POST">
              {% csrf_token %}
              {{ form.as_p }}
              <div class="text-right">
                <button type="submit" class="btn btn-primary">Senden</button>
              </div>
            </form>
          </div>
        </nav>
      </div>
    </div>
  </div>
{% endblock %}

{% block scripts %}
  <script src="https://npmcdn.com/flatpickr/dist/flatpickr.min.js"></script>
  <script src="https://npmcdn.com/flatpickr/dist/l10n/ja.js"></script>
  <script>
    flatpickr(document.getElementsByName('due_date'), {
      locale: 'ja',
      minDate: new Date()
    });
  </script>
{% endblock %}

Als nächstes werde ich eine Ansicht schreiben.

View Fügen Sie der Ansicht die folgende Methode "edit_task" hinzu.

views.py


def edit_task(request, id, task_id):
    #Holen Sie sich die ausgewählte Aufgabe
    task = get_object_or_404(Task, id=task_id)
    if request.method == "POST":
        form = TaskForm(request.POST, instance=task)
        if form.is_valid():
            task = form.save(commit=False)
            task.save()
            return redirect('tasks.index', id=task.folder_id.id)
    else:
        form = TaskForm(instance=task)
    return render(request, 'edit.html', {'form': form}, {'task':task})

Wenn Daten zu request.POST hinzugefügt werden, wird die Verarbeitung der if-Anweisung so geschrieben, dass der im Formular eingegebene Inhalt in der Datenbank gespeichert wird.

Komplett!

Dies ist das Ende dieses Kapitels und die Todo-App ist fertig! Der bisherige Code befindet sich im [Kapitel 5-Zweig] des Repositorys (https://github.com/takusugar0/django_todo/tree/chapter5).

Ich denke, Sie können von hier aus auch eine Löschfunktion oder eine Authentifizierungsfunktion hinzufügen. Ich denke, es ist eine gute Idee, sie anzupassen! Vielen Dank, dass Sie sich auf dieses Tutorial bezogen haben!

Liste der Artikel

Erstellen einer Todo-App mit Django ① Erstellen einer Umgebung mit Docker Todo-App mit Django erstellen ② Seite mit Ordnerliste erstellen Todo-App mit Django erstellen ③ Seite mit Aufgabenliste erstellen Todo-App mit Django erstellen ④ Ordner- und Aufgabenerstellungsfunktion implementieren Erstellen einer Todo-App mit Django ⑤ Erstellen einer Aufgabenbearbeitungsfunktion

Recommended Posts

Todo-App mit Django erstellen ⑤ Funktion zum Bearbeiten von Aufgaben erstellen
Erstellen Sie eine Todo-App mit Django REST Framework + Angular
Todo-App mit Django erstellen ④ Ordner- und Aufgabenerstellungsfunktion implementieren
Erstellen einer Todo-App mit Django ① Erstellen Sie eine Umgebung mit Docker
Erstellen Sie eine Homepage mit Django
Erstellen Sie mit Django einen Datei-Uploader
Erstellen Sie mit Class einen Python-Funktionsdekorator
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Schichterstellungsseite)
Erstellen Sie eine GUI-App mit Tkinter of Python
Erstellen Sie eine einfache Web-App mit Flasche
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Einführung)
Erstellen Sie mit Django ein Dashboard für Netzwerkgeräte!
Verfahren zur Erstellung plattformübergreifender Apps mit kivy
Erstellen Sie mit Django eine Hallo-Welt-Anwendung mit nur einer Datei
Einfache Aufgabenliste, erstellt mit Python + Django
Bis Sie eine neue App in Django erstellen
Erstellen Sie einen Django-Zeitplan
Django Todo Listenerstellung
Versuchen Sie, mit WebSocket mit Django (Swamp Dragon) eine Todo-Verwaltungssite zu erstellen.
Erstellen Sie mit Py2app und Tkinter eine native GUI-App
[Übung] Erstellen Sie eine Watson-App mit Python! # 2 [Übersetzungsfunktion]
Stellen Sie die mit PTVS erstellte Django-App in Azure bereit
Für mich als Django-Anfänger (1) -Erstellen eines Projekts / einer App-
Für mich als Django-Anfänger (4) - Erstellen Sie eine Memo-App-
Erstellen Sie eine Django-Umgebung mit Docker-Compose (MariaDB + Nginx + uWSGI).
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Schreiben Sie eine Basisvorlage)
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Authentifizierungsverarbeitung)
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Experiment auf der Admin-Seite)
[Go language] Erstellen Sie eine TUI-App mit Elm Architecture. Erstellen Sie eine leicht reichhaltige ToDo-App mit bubbletea
Todo App mit Django-Bootstrap-Modal-Forms-Plugin
Erstellen Sie eine Funktion in Python
Erstellen Sie eine API mit Django
ToDo-Listenerstellung [Python Django]
Erstellen Sie ein Verzeichnis mit Python
Erstellen Sie eine Shogi Score Management App mit Django 4 ~ Create View ~
Erstellen Sie eine App für maschinelles Lernen mit ABEJA Platform + LINE Bot
Erstellen Sie mit Django eine Bulletin-Board-App von Grund auf neu. (Teil 2)
Erstellen Sie mit Django eine Bulletin-Board-App von Grund auf neu. (Teil 3)
Erstellen Sie eine Web-API, die Bilder mit Django liefern kann
Erstellen Sie mit Django eine API für die soziale Integration von Smartphone-Apps
[Python] Erstellen Sie mit Django einen Bildschirm für den HTTP-Statuscode 403/404/500
Entwicklungspraxis für Webanwendungen: Erstellen Sie mit Django eine Seite zum Erstellen von Schichten! (Entwurf des Datenbankmodells)
Schritte zum Erstellen eines Django-Projekts
Erstellen Sie eine Shogi Score Management App mit Django 2 ~ Datenbankeinstellungen ~
Erstellen Sie eine temporäre Datei mit Django als Zip und geben Sie sie zurück
Erstellen Sie eine Shogi Score Management App mit Django 6 ~ Split Template ~
Erstellen Sie eine virtuelle Umgebung mit Python!
Rails-Benutzer versuchen, mit Django eine einfache Blog-Engine zu erstellen
Erstellen und Bereitstellen von Django-Apps (PTVS) mithilfe des Azure Table-Speichers
Django-Tipps - Erstellen Sie eine Ranking-Site mit Django-
Implementieren Sie die Django-App auf Hy
Erstellen Sie eine Webanwendung mit Django
Erstellen Sie mit Python + Django + AWS eine Scraping-App und wechseln Sie Jobs
Machen Sie einen Filter mit einer Django-Vorlage
Erstellen Sie einen Videoplayer mit PySimpleGUI + OpenCV 3 Hinzufügen einer Maskenfunktion
Erstellen Sie einen Poisson-Stepper mit numpy.random
Erstellen Sie eine REST-API, um dynamodb mit dem Django REST Framework zu betreiben
Erstellen Sie mit Django einen LINE-Bot