일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- java
- 자바
- lol
- github
- 스파르타내일배움캠프
- programmers
- 알고리즘
- 라이엇
- API
- 코딩테스트준비
- Django
- 백준
- SQL
- 내일배움캠프
- python
- 코딩테스트
- 파이썬
- 장고
- greedy
- 스파르타내일배움캠프TIL
- 그리디
- Riot
- 리그오브레전드
- 롤
- git
- 그리디알고리즘
- 탐욕알고리즘
- drf
- sort
- 프로그래머스
- Today
- Total
목록스파르타내일배움캠프 (94)
Lina's Toolbox
✔️ 기능이 많은(독선적) 프레임워크일수록 처음 러닝커브가 가파른편입니다.이 구간만 지나면 훨씬 평이해지니 화이팅! 오늘 내용도 외우려고 하지 말고,이런게 있구나만 알고 넘어가는 마음가짐으로 하기를 바란다.장고 폼클래스는 선택의 영역이다!커스텀할 코드가 많다면 그냥 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..
HTTPHyper Text Transfer Protocol⇒ Web에서 이루어지는 **데이터 교환의 기초(**약속)입니다.요청(Request)클라이언트 → 서버로 전송되는 메세지응답(Response)서버 → 클라이언트로 전송되는 메세지특성Stateless (무상태)→ 모든 응답과 요청은 독립적입니다.→ 서버가 클라이언트의 상태를 보존하지 않습니다.(서버와 클라이언트는 서로를 기억하지 않습니다.)Connectless (비연결성)→ 연결을 유지하지 않으므로 서버 자원을 효율적으로 사용 가능합니다.→ 이후 HTTP1.1이 등장하면서 개선되었습니다.→ 요청 받고 응답을 주고나면 연결을 종료합니다.⇒ 단순하며 확장성이 용이한 구조 HTTP Message요청(Request)클라이언트가 서버로 전달해서 서버의 어떤 ..
이제 우리가 배운 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..
Django 프로젝트에서 자동으로 ERD를 생성해주는 사이트를 찾던 중 알게된 사이트! dbdiagram.io dbdiagram.io - Database Relationship Diagrams Design Tool dbdiagram.io dbdiagram.io웹 기반의 ERD 도구로, 간단한 SQL 같은 구문을 사용하여 데이터베이스 구조를 시각화할 수 있다. DBdiagram.io 웹사이트의 제공된 텍스트 편집기에SQL 또는 DSL(Data Structure Language)을 사용하여 테이블과 관계를 정의하면,자동으로 ERD를 생성해주는 아주 똑똑한 녀석!!웹사이트에 들어가서 작업만 하면 되므로, 설치도 따로 필요 없다. 하지만 장고의 Models.py 내용으로 ERD를 자동 생성하려면,주어진 Djan..
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..
중고 거래 사이트를 장고 프레임워크를 사용하여 개발 중이다.그런데 상품 정렬 기능을 개발하던 중... 정렬 버튼을 아무리 눌러도 결과가 반영되지 않는 문제가 발생했다. 원인 파악쿼리 여러번 확인하고, 템플릿 url 링크 확인, 템플릿 상속 문제,캐시 문제까지 2시간 가량 별의 별것을 다 확인해봤지만 원인이 아니였다. {% block sorting %} 최신순 인기순 {% endblock sorting %} 해당 버튼을 누를 때마다 터미널 창을 확인해보면,[22/Aug/2024 19:33:51] ..
Django framework로 웹 프로그램을 만드는 프로젝트 중..css 파일을 작성해줬지만 해당 화면에 적용이 되지 않았다. 분명히 padding을 줬는데 반영이 되지 않는 상황 ㅠㅠ 처음에는 파일 경로의 문제인가? 싶었지만 그건 아니였다.파일 위치의 문제인 지 확인 하는 법확인하는 방법은 다음과 같다. 1. 파일시스템에서 직접 파일 경로 확인 나 같은 경우는, 프로젝트의 모든 템플릿 html파일들이 상속하는 부모템플릿이 되는 base.html을프로젝트 디렉토리/templates에 넣어주고,style.css파일은 products앱 디렉토리 아래에 products/static/products/css/style.css 넣어주었다. 2. Django 설정 확인from pathlib import Pat..
Model저장할 데이터에 대한 필드와 동작들을 포함한 데이터베이스 구조 (layout)입니다.Django는 Model을 이용해서 데이터를 조작합니다.일반적으로 하나의 Model은 하나의 데이터베이스 테이블을 의미합니다.데이터베이스(Database)잘 정리된 데이터가 모여있는 것입니다.쿼리(Query)데이터베이스를 조작할 수 있는 언어입니다.스키마(Schema)데이터베이스의 구조, 관계 등을 정의한 것입니다.→ 전반적인 명세서라고 할 수 있어요!🔽 스키마 예시더보기사용자 (Users)사용자 ID (User_ID) - 정수 (Integer)이름 (Name) - 문자열 (String)이메일 (Email) - 문자열 (String)주소 (Address) - 문자열 (String)책 (Books)책 ID (Bo..
Django URLsURL dispatcher공식 문서: https://docs.djangoproject.com/en/4.2/topics/http/urls/#top 🔽 Dispatcher란 무엇일까요?더보기응급 콜센터에서 상주하는 사람작업을 관리하는 구성요소택배 운송 경로를 계획하는 직원무언가를 목적지로 보내는 주체라고 이해할 수 있겠습니다.저희는 지금 웹을 배우고 있으니 우리 식으로 해석을 해보면 이렇습니다!💡 Dispatcher란 들어온 요청을 어디로 보내서 처리할지 정하는 곳! / 이야기https://www.mycooooolsite.com/https://www.mycooooolsite.com💡 이 두개는 다른 겁니다.https://www.mycooooolsite.com/ (디렉토리)htt..