[PYTHON] Versuchen Sie es mit Django templates.html

Ich kenne form.py ehrlich gesagt überhaupt nicht und benutze es zum ersten Mal. Ich habe mehrere Artikel im Internet gelesen, aber ich konnte überhaupt nicht daran denken ... (lacht)

Ich werde es jedoch vorerst schreiben.

form.py



from django import forms
from .models import Staff

class CreateUserForm(forms.ModelForm):
    #Modellform erben
    class meta():
        model = Staff
        fields = ("name ", "password", "roll", "nyushabi", "taishabi", "hyoujijyun", "jikyu", "delete ")

Damit scheint es, dass es mit HTML verknüpft wird.

Erstellen Sie als Nächstes Ansichten.

views.py


from django.shortcuts import render
from . import CreateUserForm
 
def form_name_view(request):
    form = forms.UserForm()
    if request.method == 'POST':
        form = forms.CreateUserForm(request.POST)
        if form.is_valid():
            form.save()
    return render(request, 'templates/staff.create.html', {'CreateUserForm': form})

if request.method=="POST" Ist ein Befehl, der ausgeführt wird, wenn die Registrierungstaste nach der Eingabe gedrückt wird, da es sich um eine Anforderung handelt, die nicht zum ersten Mal angezeigt wird.

Wenn es nicht Post ist, ist es ein Bild, das die Vorlage aufruft und CreateUserForm von Foms aus aufruft. Ich weiß nicht, ob das wirklich in Ordnung ist (lacht)

Erstellen Sie als Nächstes eine Vorlage. Kopieren Sie zunächst base.html von bootstarp und ändern Sie ein Teil.

base.html


<!doctype html>
<html lang="ja">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">

    <title>
    {% block title %}
    {% endblock title %}
    </title>
    
</head>
  <body>
    {% blcok header %}
    {% endblock header %}
    {% block content %}
    {% endblock content %}

    <!-- Optional JavaScript -->
    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
  </body>
</html>

Damit ist die Erstellung des Basisteils abgeschlossen.

HTML für die Registrierung ist

python:staff.create.py


{% extends 'staff/base.html' %}

{% block content %}
{{ form.as_p }}
<input type="submit" class="btn btn-primary" value="Submit">
{% block content %}

Dies sollte es von der Basis laden, in den Inhalt einstecken und anzeigen.

Zum Schluss korrigieren Sie urls.py

python:staff.url.py



from django.urls import path, include
from .views import createstaff

urlpatterns = [
    path('create/', createstaff, name = "createstaff"),
]

Starten wir nun den Server und versuchen zu prüfen, ob er einmal angezeigt werden kann.

image.png

Es ist ein Fehler, dass Formulare in der 5. Ansichtszeile nicht gefunden werden können.

staff.views


from django.shortcuts import render
from .form import CreateUserForm
 
def createstaff(request):
    form = CreateUserForm.UserForm()
    if request.method == 'POST':
        form = forms.CreateUserForm(request.POST)
        if form.is_valid():
            form.save()
    return render(request, 'templates/staff.create.html', {'CreateUserForm': form})

Ich werde es noch einmal versuchen.

image.png

Es ist immer noch nutzlos.

Danach habe ich versucht, ein wenig damit zu spielen, aber ich konnte den Fehler nicht beheben, daher werde ich die Verwendung von Formular beenden und zum Erstellen mit Klasse wechseln.

Recommended Posts

Versuchen Sie es mit Django templates.html
Versuchen Sie es mit Tkinter
Versuchen Sie es mit Docker-Py
Versuchen Sie es mit einem Ausstecher
Versuchen Sie es mit Geopandas
Versuchen Sie es mit Selen
Versuchen Sie es mit scipy
Versuchen Sie es mit pandas.DataFrame
Versuchen Sie es mit Django-Swiftbrowser
Versuchen Sie es mit matplotlib
Versuchen Sie es mit tf.metrics
Versuchen Sie es mit PyODE
Versuchen Sie, mit django-import-export csv-Daten zu django hinzuzufügen
Versuchen Sie es mit virtualenv (virtualenvwrapper)
Versuchen Sie Debian + Python 3.4 + django1.7 ……
Versuchen Sie es jetzt mit virtualenv
[Kaggle] Versuchen Sie es mit LGBM
Versuchen Sie es mit dem Feed-Parser von Python.
Versuchen Sie es mit Pythons Tkinter
Versuchen Sie es mit Tweepy [Python2.7]
Versuchen Sie es mit Pytorchs collate_fn
Versuchen Sie, PythonTex mit Texpad zu verwenden.
[Python] Versuchen Sie, Tkinters Leinwand zu verwenden
Versuchen Sie es mit Jupyters Docker-Image
Versuchen Sie es mit Scikit-Learn (1) - K-Clustering nach Durchschnittsmethode
Versuchen Sie es mit matplotlib mit PyCharm
Versuchen Sie es mit Azure Logic Apps
Versuchen Sie es mit Kubernetes Client -Python-
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit OpenCV unter Windows
[Django] Hinweise zur Verwendung der Django-Debug-Symbolleiste
Versuchen Sie, Jupyter Notebook dynamisch zu verwenden
Versuchen Sie es mit AWS SageMaker Studio
Versuchen Sie, automatisch mit Selen zu twittern.
DEBUG-Einstellungen bei Verwendung von Django
Versuchen Sie es mit SQLAlchemy + MySQL (Teil 1)
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit SQLAlchemy + MySQL (Teil 2)
Versuchen Sie es mit der PeeringDB 2.0-API
Versuchen Sie es mit der Entwurfsfunktion von Pelican
Versuchen Sie es mit pytest-Overview und Samples-
Versuchen Sie es mit Folium mit Anakonda
Versuchen Sie es mit der Admin-API von Janus Gateway
Entwicklung einer WEB-Anwendung mit Django [Django-Start]
Versuchen Sie es mit Spyder, das in Anaconda enthalten ist
Versuchen Sie es mit Designmustern (Exporter Edition)
Versuchen Sie es mit Pillow auf iPython (Teil 1)
Entwicklung einer WEB-Anwendung mit Django [Anwendungszusatz]
Versuchen Sie es mit Pillow auf iPython (Teil 2)
Versuchen Sie es mit der Pleasant-API (Python / FastAPI).
Versuchen Sie es mit LevelDB mit Python (plyvel)
Versuchen Sie, Nagios mit pynag zu konfigurieren
Versuchen Sie, die Remote-Debugging-Funktion von PyCharm zu verwenden
Django
Versuchen Sie es mit ArUco mit Raspberry Pi
Probieren Sie Ajax auf der Django-Seite aus
Versuchen Sie es mit billigem LiDAR (Camsense X1)
[Sakura-Mietserver] Versuchen Sie es mit einer Flasche.
Stärkung des Lernens 8 Versuchen Sie, die Chainer-Benutzeroberfläche zu verwenden
Versuchen Sie, Statistiken mit e-Stat abzurufen
Versuchen Sie es mit der Aktions-API von Python argparse