일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Django
- 그리디알고리즘
- 리그오브레전드
- programmers
- git
- 파이썬
- 그리디
- 자바
- 장고
- 라이엇
- drf
- python
- 코딩테스트
- lol
- java
- 내일배움캠프
- Riot
- 프로그래머스
- github
- 스파르타내일배움캠프TIL
- API
- 알고리즘
- 백준
- 코딩테스트준비
- sort
- 스파르타내일배움캠프
- 탐욕알고리즘
- 롤
- SQL
- greedy
- Today
- Total
목록장고 (32)
Lina's Toolbox
Django의 Auth System을 이용해서 기본적인 회원기능을 구현 해보자! 회원가입Django는 기본 auth.User를 가지고 있기에 이를 기반으로한 기본적인 회원가입 ModelForm을 제공하고 있습니다.UserCreationFormDjango는 OpenSource이다장고 공식 깃허브 참조하기!! (https://github.com/django/django/blob/944745afe2ec45aed30cef799c250107f1364ca7/django/contrib/auth/forms.py#L196)username과 password 로 새로운 user를 생성하는 ModelFormusername, password1, password2를 가짐 구현하기(signup) accounts/forms.pyfr..
퍼블릭 IPv4주소인스턴스 상태 - 인스턴스 재부팅 하면 바뀐다. -> 유동 ip 주소! 고정 ip주소를 쓰고 싶다면 ? -> 탄력적 IP주소를 발급 받으면됨 . (근데 유료임..)재부팅만 안하면 그대로이므로 우리는 지금은 그냥 해보자. 서버에서는 절대 makemigrations은 해주지 않는다!!migrate만 해준다. 이제 접속이 된다!! 💡 사실 이렇게까지만 하고 써도 되긴하지만,python3 manage.py runserver이렇게 하면 개발용으로 서버를 키는 것이다!!(Django에 내장되어있는 간단한 WSGI임)개발 서버는 20명정도만 동시 접속해도 펑 터짐...그러므로 배포할 때는 앞에 여러가지 장치를 붙여서 배포를 해야한다! 개발 서버에서 벗어나기지금까지 Django 서버를 실행..
Authorization (Auth) - (필요한) 권한 PostmanDocumentation에서 문서 작성하고,send 눌러서 콜 한뒤 결과뜨면save as example을 눌러서 지금 이 콜한 상태를 저장하며해당 request하단에 example이 생긴다!401 Unauthorized , 200 OK 등으로 이름을 바꿔주면 보기 편리하지만 3인 이상부턴 유료라는거,,,또, 다큐멘테이션에 가끔 에러가 있다.. 날라간다거나,,등의 자잘한 에러그래도 써보는 것을 추천! drf-spectacular~/api/schema/swagger-ui/ 접속로그인(http://api/v1/accounts/signin/) 눌러서파라미터 value admin, admin1234 해주고나서 받은 access키를 복붙해서화면 ..
Auth웹 개발에 빼놓을 수 없는게 바로 Auth입니다!→ 당연히 django도 제공하고 있습니다. 🙂settings.py를 살펴봅시다.request → response나갈때 그냥 나가는게 아닌미들웨어들을 거친 후 response로 나간다.내가 만약 무조건 거치게 만들고싶은 과정이 있다면커스텀 미들웨어를 만들어 추가해줄수 있다. django.contrib.auth → 인증 핵심 로직과 관련 기본 모델django.contrib.contenttypes → 사용자의 모델과 권한을 연결💡 아, 그런가보다~ 하고 넘어가도 되는 부분입니다. 인증(Authentication)과 권한(Authorization)을 합쳐서 Auth라고 대개 인증시스템이라고 명명합니다.인증(Authentication) : 내가 누구인지..
객관식은 쉬웠고주관식부터는 생각보다는 어려웠는데그래도 대체적으로 문제는 쉬운편이였다. 다 맞은듯?!그래도 블로그에 나온 문제 정리해보자객관식Django 프로젝트에서 다양한 관리 명령을 실행할 수 있게 하는 파일은 무엇인가요?A) settings.pyB) urls.pyC) views.pyD) manage.py다음 중 Django에서 제공하는 기본적인 데이터베이스는 무엇인가요?A) PostgreSQLB) MySQLC) SQLiteD) MongoDBDjango의 QuerySet 메서드 중 데이터베이스에서 특정 조건에 맞는 모든 레코드를 반환하는 메서드는 무엇인가요?A) filter()B) get()C) exclude()D) all()Django 템플릿 시스템에서 변수의 값을 출력할 때 사용하는 문법은 무엇인가..
URL Namespace우리의 프로젝트는 article과 user 두개의 앱을 가지고 있다.우리는 url name을 참조하여 실제 url을 찾아가도록 하는데,만약 두개의 앱에서 같은 name을 쓴다면 어떻게 될까?(articles/urls.py에도 hello/ url이 있고, users/urls.py에도 hello/가 있다면?) articles/urls.pyfrom django.urls import pathfrom . import viewsurlpatterns = [ ... path("hello/", views.hello, name="hello"), ...] users/urls.pyfrom django.urls import pathfrom . import viewsurlpatterns ..
✔️ 기능이 많은(독선적) 프레임워크일수록 처음 러닝커브가 가파른편입니다.이 구간만 지나면 훨씬 평이해지니 화이팅! 오늘 내용도 외우려고 하지 말고,이런게 있구나만 알고 넘어가는 마음가짐으로 하기를 바란다.장고 폼클래스는 선택의 영역이다!커스텀할 코드가 많다면 그냥 html 써도됨.변경해줄 부분이 많지 않다면, 장고폼을 쓰면 더 편할뿐..! Django Form ClassDjango Form Class로 반복 작업을 줄여줄 수 있다.유저는 사악하다?!숫자만 입력하세요: 히히히히히⇒ 숫자만 입력하라고 되어있지만, 꼭 다른 형식으로 입력하시는 분들이 있습니다.그렇기 때문에, 유저가 입력하는 데이터는 반드시 유효성 검사가 필요합니다! 이 과정에서 중복되는 코드도 많겠죠?⇒ 그러면 form도 작성해야지, v..
보통 글작성하면 이화면이 나오지는 않죠?글을 작성한 뒤 글 목록 페이지를 보여주도록 수정해볼까요?→ 아 ! 그러면 /create/ 경로에서 create.html 을 랜더링하는게 아니라 articles.html 을 랜더링하면 되지! …. ?글목록 어디갔지?url은 왜 /articles/create/ 지?→ html만 다른 템플릿으로 랜더링 했을뿐, 실제로 url이 이동해서 GET 요청을 보낸 것이 아닙니다! → 단순히 랜더링 해주는게 아니라, 리다이렉트(내가 지정한 url로 돌려보내는 것)를 해줘야한다. redirect 사용하기redirect는 지정한 URL로 되돌리는 것을 말합니다.우리가 웹 사이트를 이용하면서 많이 봐왔던 동작 방식입니다.articles/views.pyfrom django.shortc..
이제 우리가 배운 ORM을 쉘이 아닌 , 장고 코드 안에 직접 작성해보자! 실습 준비/articles/ 로 들어오면 아래의 articles.html 템플릿이 랜더링되어 보이도록 준비1. urls.py에 추가path("", views.articles, name="articles"), 2. views.py에 추가def articles(request): return render(request, "articles.html") 3. articles.html{% extends 'base.html' %}{% block content %} Articles {% endblock content %} 조회데이터베이스에서 모든 아티클을 조회해서 /articles/에서 볼 수 있도록 해봅시다! 1. view에서 mode..
ORM (Object-Relational-Mapping)SQL 안쓰고 Python으로 데이터베이스 조작할 수 있게 해주는 것!(ORM은 최적화된 sql쿼리를 내부에서 제공해주기 때문에 기초 sql을 할수 있는 정도라면 orm 쓰는게 더 빠르다.)Django ORM만 있는건 아니고 여러 가지가 존재합니다.Python - Django ORM, SQLAlchemy, Tortoise ORM …JAVA - JPA, Hybernate …Node.js - Sequalize …결국 ORM이 중간에서 고생해 주는 것!SQL Statement ↔ ORM ↔ Python Object ORM 장단점 💡 장점SQL을 잘 알지못해도 DB 조작 가능!SQL을 알아도 기존의 복잡한 쿼리문 작성없이 객체 지향적인 접근 가능!SQL..