Canvas of Bliss

------------------------------------------------------------------------

클라이언트가 웹 브라우저에서 DB까지 데이터 보내기

-------------------------------------------------------------------------

 

1. form 태그와 뷰

1) views.py 사용자의 요청을 처리하는 views.py에서 사용자가 요청하는 메소드에 따라 처리해주는 코드를 작성 views.py는 사용자의 요청을 받아 원하는 함수를 실행할 때 request 객체를 전달하는데 request 객체에는 메소드, 사용자가 전달한 데이터 등 다양한 정보가 들어 있다.

(1) GET으로 요청을 받을 때 if request.method=="GET" : return render(request, 'test.html')

(2) POST로 요청을 받을 때 if request.method=="POST" : return render(request, 'test2.html')

 

2. form 태그와 모델

1) forms.py 파일 from django import forms from .models import Fruit class FruitForm(forms.ModelForm): class Meta: model = Fruit fields = ('name', 'descript', 'price', 'quantity')

2) views.py 파일 if request.method=="GET" : form = FruitForm() return render(request, 'test.html', {'form': form}) elif request.method=="POST" : form = FruitForm(request.POST) if form.is_valid(): post = form.save(commit=False) post.save() return render(request, 'test2.html')

3) html 파일 <form action="." method="post"> {% csrf_token %} {{ form.as_p }} <input type="submit"> </form> 또는 input 태그 직접 작성

 

 

-------------------------------------------------------------------------

DB에 저장된 데이터를 클라이언트의 웹 브라우저에 보내기

-------------------------------------------------------------------------

 

1) views.py from django.shortcuts import render from formtest.models import Fruit def read(request): abcd = Fruit.objects.all() return render(request, 'getgetget.html', {'qwer': abcd})

2) html 파일 <body> {% if qwer %} <ul> {% for qw in qwer %} <li>{{ qw.name }}</li> {% endfor %} </ul> {% endif %} </body>

'개발 공부 > Django' 카테고리의 다른 글

DB연동  (0) 2020.08.13
정적파일  (0) 2020.08.13
장고 프로젝트 구조  (0) 2020.08.10

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band