일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- PYTHON
- express
- 자바스크립트
- androidstudio
- 중국어입문
- 장고
- react
- 블로그 만들기
- java
- 안드로이드
- 중국어
- javascript
- 안드로이드스튜디오
- 블로그만들기
- 입문
- 자바
- Node js
- Android
- 개발
- mongodb
- mern Stack
- 리액트
- Django
- 파이썬
- 알고리즘
- nodejs
- 안드로이드 스튜디오
- es6
- MernStack
- Android Studio
- Today
- Total
City At Night
Django! 2. 게시물을 작성하자.CREATE(1) 본문
CRUD라고 들어봤나 ??
CRUD는 Create의 C , Read의 R . Update의 U , Delete의 D의 약자이다.
말 그대로 만들고 읽고 수정하고 삭제하는 기능이다.
닥치고 바로 시작하자.
내가 게시판에 접속해서 글을 작성할때 게시판에는 작성할 수 있도록 틀이 만들어져 있다.
제목 :
내용 :
그럼 나는 제목란에 제목을 적으면 되고 내용란에 내용을 적으면 된다.
이 틀을 Model이라고 한다. 틀이 있어야 틀에 맞게 글을 써야되니 Model부터 만들어보자
App폴더 안의 models.py으로 고고
Post로 클래스명을 작성했다.
지금은 회원가입 및 로그인 기능을 만들지 않을거니
author 작성자를 만들었다.(회원가입 만들면 수정함)
subject 제목
body 내용
image 이미지 (blank값 True로 해주세요~ 이미지를 안넣어도 작성외 돼야죠?)
create_at 게시판 작성 시간
def__str__(self)를 해주는 이유
이따 admin에서 보자. ㅎㅎ
글로 설명보단 팍 눈으로 보는게 더 이해잘감 ㅎ
자 git bash에 python manage.py makemigrations App이름 쳐 줍시다.
-Create model Post라고 떳쥬? 그럼 성공한거에유
그러면 내 App폴더 안에 migrations안에 0001_initial.py가 생성됩니다.
한번 열어보세요. 우리가 작성했던 models와 똑같은 내용이 중간에 들어가있을거에요
그럼 이제 python manage.py migrate를 해주시면 끝!
저렇게 Ok가 막나오면 잘 반영됐다는거에유.
쉽게 말해서
makemigrations와 migrate는 내가 모델을 만들었어!라고 장고에게 말해주는거다!!
무조건 뭘 만들면 장고한테 일러주세요.
이젠 슈퍼유저라고하는 관리자 계정을 만들어볼게요.
장고에서는 관리자사이트를 제공하는데요. 그 사이트로 접속하면 저희가 만들었던 게시판 틀 있죠?
그 틀이 만들어져있습니다. 거기서 게시판을 관리자 권한으로 작성할 수 있어요!
그럼 관리자 계정을 만들어봅시다.
python manage.py createsuperuser 를 쳐주세요! 띄어쓰기 없습니다 오타 주의하세요
자 저는 계정 아이디는 admin으로 하였고 주소는 대충 적었어요! 실제 개발할때는 진짜 이메일을 적으세요!
password 작성할때 타자 치는데 안보이시는거 이상한거 아닙니다! 장고에서 안보여주는거에요ㅋㅋㅋ 렉 걸렸다고 오해 하지마시길..
저는 1234로 설정했기에 저렇게 경고 메세지를 날려주네요. 그래도 저는 연습삼아 하는것이니 y를 눌러 패스~
자! 다 만들었으면 저희 서버 접속하시는 법 아시쥬?
서버를 가동해주세요 ~ python manage.py runserver
그 다음 http://127.0.0.1:8000/admin/ 뒤에 admin을 붙여주세요
자 이제 여러분들에게 익숙한 로그인창! (저는 매일 코드만 보다 저 로그인창 봤을때 뭔가 고향온 기분이였습니다 ㅜ)
아까 만들었던 관리자 계정있죠? 그걸로 로그인 해주세요!
얼래..? 아까 우리가 만들었던 Post틀이 없네요?
네. migration으로 장고에게 알려줬지만 admin에게는 알려주지 않았죠 ㅎㅎ
다시 코드창으로 돌아갑시다
내 app안의 admin.py에 등록을 해줘야 합니다!
from .models import Post
# Register your models here.
admin.site.register(Post)
간단 하쥬?
하나의 틀을 만들때마다 저렇게 등록을 해주세요
그리고 다시 http://127.0.0.1:8000/admin/ 고고씽
이제는 만들어졌네요! 옆에 Add를 눌르면 저희가 만들었던 틀이 나옵니다!
자 내용을 대충 적어줍시다 !
우선 사진은 넣지말구요!
save해보면 이제 저희 글이 올라왔습니다!!
자신을 위해서 박수를 쳐주시구요. 옆에 강아지가 있으면 쓰담해주시고 다시 정신 차립시다.
아까 위에서 models.py작성할때 def__str__(self)해주는 이유 설명드릴게요
return f'{self.author} :{self.body}' 이거 적어줬쥬?
저 포스트가 admin:첫 게시물입니다 사진은 안올릴거에요로 출력 되는 겁니다 ㅎㅎ
이제 아~~ 하시는거 다 압니다.
아 그리고 관리자 사이트에만 올라온거에요!!
이걸로 CRUD의 CREATE(1)을 완성했습니다!! CREATE(2)는 관리자 사이트가 아닌 일반 페이지에서 하는걸로 다룰거에요.
우선 내가 만든 게시판을 보고 싶으니 READ하고 CREATE(2)를 배워보도록 하겠습니다!
자 눈을 감고 오늘 했던 흐름 순서!! 다시 새겨보세요!
코드야 뭐 구글에 치면 다나오지만 흐름을 모르면 구글에 뭘 검색해야할지도 모릅니다!
'Django 기초' 카테고리의 다른 글
Django! 5. 게시물을 작성하자 CREAT(2) (0) | 2020.09.09 |
---|---|
Django! 4. 게시물을 읽어보자! READ(2) (0) | 2020.09.09 |
Django! 3. 게시물을 읽어보자! READ(1) (0) | 2020.09.09 |
Django! 1. 기초 1 (제일 중요!) (0) | 2020.08.31 |