簡體   English   中英

Django 中的 ModelForm 未顯示

[英]ModelForm in Django not showing

我正在嘗試在 django 中顯示一個基本表單,但是一旦我運行服務器就不會呈現表單,如果您能幫助我解決這些問題,我將不勝感激,這里是我的代碼。

模型.py

STATUS_OPTIONS =(
    ('OP', 'OPEN'),
    ('CL', 'CLOSED')
)

class Employee(models.Model):
    id = models.AutoField(primary_key=True)
    first_name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=100)
    email = models.EmailField(max_length=200)
    status = models.CharField(max_length=50, choices=STATUS_OPTIONS)
    password = models.CharField(max_length=100)

    def __str__(self):
        return self.first_name

forms.py

from django import forms
from .models import Employee

class EmployeeForm(forms.Form):
    class Meta:
        model = Employee
        fields = "__all__"

網址.py

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

urlpatterns = [
    path('', views.create_employee),
]

視圖.py

from .forms import EmployeeForm

# Create your views here.

def create_employee(request):
    form = EmployeeForm()
    return render(request, 'employee/create_employee.html', {'form':form})

create_employee.html


<h1>Formu</h1>
<form action="" method='POST'>
{{form.as_p}}
<input type="submit">
</form>

當我運行程序時,唯一呈現的是標簽,知道嗎?

為了從模型中創建 forms 您需要使用ModelForm而不是Form 否則,您最終會得到一個沒有任何字段的常規表單。

from django.forms import ModelForm
from .models import Employee

class EmployeeForm(ModelForm):
    #...

更多關於ModelForm 在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM