본문 바로가기

포트폴리오/python

장고로 배우는 쉽고 빠른 웹 개발 #1 웹 클라이언트 라이브러리




외부라이브러리 - 보통 requests,beautifulsoup4 등을 사용하는 것이 일반적.


웹 클라이언트용 패키지는 기본적으로 urllib패키지와 http패키지가 제공된다.


[urllib패키지들]

urllib.parse 

urllib.request ( urlopen() 함수에서 왠만한 시험동작 모두 가능 )

urllib.error

urllib.response

urllib.robotparser

특징 - 전부 클라이언트용 패키지임.(고수준 api)


[http패키지들]

http.client

- 헤더를 제어할 때는 putheader(),endheaders(),send()메서드를 사용함.

http.cookiejar

http.cookie

http.serve

특징 - 위 두개는 클라이언트용, 아래 두 개는 서버용 api임. (저수준api)


_______________________________________________________________________________________________


장고 프로젝트 생성 기본 명령어


cmd로 원하는 위치에서 아래 명령어를 실행한다.


django-admin startproject 프로젝트명

python mamnage.py startapp 어플리케이션명

sublime_text(or notepad) settings.py

(settins.py에서 호스트나 db설정을 변경한 후 migrate합니다.)

python manage.py migrate

python manage.py runserver


localhost/admin 슈퍼유저 만들기___________________________________________________________________________________________



프로젝트의 루트 디렉토리에서 

pyhon manage.py createsuperuser 명령 실행.



슈퍼유저 아이디를 만들고 localhost/admin url로 들어가면 위와 같은 화면이 나온다.



테이블의 정의___________________________________________________________________________________________



step1) models.py파일 수정


db의 테이블을 설정할 때는 지정한 어플리케이션 폴더로 들어가서 models.py와 admin.py파일을 동시에 수정해야 한다.

models.py에서는 테이블을 하나의 클래스로 정의하고, 컬럼은 클래스 안의 변수로 매핑한다.


ex)

from django.db import models

class 테이블명(models.Model):

user_name=models.CharField(max_length=200)

age=models.IntegerField(default=0)


def __str__(self):

return self.user_name


step2) admin.py파일 수정

admin 사이트에 table반영하기. 어플리케이션 폴더로 이동. 에디터로 admin.py파일을 열어 아래 내용을 삽입.


from django.contrib import admin

from 어플리케이션명.models import 테이블명(step1에서 설정한 테이블명)


admin.site.register(테이블명)


admin.site.register()함수를 이용하여 미리 만들어놓고 임포트한 클래스를 admin사이트에 등록하기


step3) 데이터베이스 변경사항 반영하고 서버에서 확인하기

다시 루트 디렉터리로 돌아간다 (manage.py 파일이 있는 위치)


python manage.py makemigrations

python manage.py migrate 


명령어 연달아 실행하기. 이제 다시 admin페이지를 확인해보기.


위와같이 새로운 테이블이 등록된 것을 어드민 페이지에서 확인할 수 있다.



'포트폴리오 > python' 카테고리의 다른 글

flask 메모  (0) 2020.07.22
git Pull Request 명령어  (0) 2019.03.19
bsj  (0) 2019.01.10
티스토리 코드하이라이트 사용하기  (0) 2018.12.05
python import 문법  (0) 2018.12.04