Django 템 플 릿 폼 을 구축 하 는 두 가지 방법

일반적으로 폼 을 만 들 려 면 템 플 릿 파일 login.html 에 기록 합 니 다.

<form action="/your-name/" method="post">
 <label for="your_name">Your name: </label>
 <input id="your_name" type="text" name="your_name" value="{{ current_name }}">
 <input type="submit" value="OK">
</form>
django 를 사용 하여 템 플 릿 파일 에 form 폼 을 만 드 는 방법 에 대해 말씀 드 리 겠 습 니 다.
1.사용자 정의 필드:
템 플 릿 에 username 과 content 가 들 어 있 는 폼 을 만 들 려 면
app 에서 forms.py(/users/forms.py)를 새로 만 듭 니 다.

from django import forms

class MessageGetForm(forms.Form):
 username = forms.CharField(label='  ', max_length=5) #max_length                
 content = forms.CharField(label='  ', max_length=100)
보기 파일 에서 위 폼 필드 를 참조 하여 템 플 릿 에 전달 합 니 다(users/view.py)

from apps.users.forms import MessageGetForm

class MessageView(View):
 def get(self, request, *args, **kwargs):
  message = MessageGetForm()

  return render(request, "message.html", {"message": message})
템 플 릿 파일 호출(message.html)

<form action="" method="get"> 
 {{ message }}
</form>
렌 더 링 후 페이지 효과

2.데이터 시트 의 필드 를 템 플 릿 파일 form 폼 에 표시 합 니 다.
데이터 테이블 코스lesson 필드 는 다음 과 같 습 니 다.

app 에서 forms.py(/users/forms.py)를 새로 만 듭 니 다.

#            courses/models.py   Lesson from apps.courses.models import Lesson
from django.forms import ModelForm

class CoursesLessonForm(ModelForm):
 class Meta:
  model = Lesson
  fields = ['add_time', 'name', 'learn_times'] #      
보기 파일 에서 위 폼 필드 를 참조 하여 템 플 릿 에 전달 합 니 다(users/view.py)

from apps.users.forms import CoursesLessonForm

class MessageView(View):
 def get(self, request, *args, **kwargs):
  message = CoursesLessonForm()

  return render(request, "message.html", {"message": message})
템 플 릿 파일 호출(message.html)

<form action="" method="get">
 {{ message }}
</form>
페이지 효과 그림:

모든 폼 클래스django.forms.Form또는  django.forms.ModelForm의 하위 클래스 를 만 듭 니 다.당신 은  ModelForm상상  Form의 하위 클래스.실제로  Form과  ModelForm종(사유)  BaseForm류 는 통용 기능 을 계승 하 였 으 나 이 실현 세부 사항 은 그다지 중요 하지 않다.
Django 가 템 플 릿 폼 을 구축 하 는 두 가지 방법 에 관 한 글 은 여기까지 입 니 다.Django 가 템 플 릿 폼 폼 을 구축 하 는 두 가지 방법 에 관 한 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부탁드립니다!

좋은 웹페이지 즐겨찾기