[PYTHON] Djangos Modellform war unglaublich.

Ein Formular, das die Werte des Formulars auf das Modell festlegt. Das ist die Modellform

Wenn es ein normaler Rahmen ist Wenn Sie das Modell in der Datenbank registrieren, legen Sie den Wert in jedem Feld fest.

SomeCreateProcess.py


#Wie man normal einstellt
someModel.name = name
someModel.user = user
....

Django Model Form löst ein solches Problem. Suguremono, das den von der Anforderung empfangenen Wert automatisch im Modell festlegt und sogar registriert

Einfach zu implementieren. Erben Sie einfach ModeForm und legen Sie die Metaklasse hinein.

modelsModelForm.py


from django import forms

from memFrame.models.SomeModel import SomeModel 

'''
Modellform für Honya Honya
@author Prautla
'''
class PictUploadForm(forms.ModelForm):
    class Meta:
        model = SomeModel #Sichern Sie einen Zeiger auf das Modell
        fields = ['name', 'user' ....]   #Deklarieren Sie ein Feld

Eigentlich verwenden

Der Rest ist einfach. Übergeben Sie einfach den POST-Text der Anfrage

SomeCreateProcess.py


someModelForm:SomeModelForm= SomeModelForm(request.POST, instance=SomeModel()) #in diesem Fall"instance="Es ist optional
someModelForm.save()

Übergeben Sie den nicht vom POST übergebenen Wert an das Instanzargument Sie können es frei einstellen, indem Sie es in das Modell einfügen.

SomeCreateProcess.py


obj:SomeModel = SomeModel()
obj.mailAddress = "[email protected]"
obj.sex = "Mann"

someModelForm:SomeModelForm= SomeModelForm(request.POST, instance=obj)
someModelForm.save()

Recommended Posts

Djangos Modellform war unglaublich.
Vorteile der Verfeinerung des Django-Modells
Beschränken Sie Ansichten mithilfe des Berechtigungsmodells von Django
[Mein Memo] Djangos benutzerdefiniertes Benutzermodell