일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- github
- 파이썬
- 롤
- SQL
- python
- drf
- 알고리즘
- 장고
- 라이엇
- lol
- greedy
- 내일배움캠프
- Django
- 스파르타내일배움캠프TIL
- API
- 그리디
- 코딩테스트준비
- sort
- 백준
- Riot
- git
- 스파르타내일배움캠프
- java
- 그리디알고리즘
- 자바
- programmers
- 탐욕알고리즘
- 코딩테스트
- 프로그래머스
- 리그오브레전드
- Today
- Total
목록python (50)
Lina's Toolbox
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b6TZnB/btsJx7HN6K1/BUjKjcyIf9w2qwGCxcrk4k/img.png)
관리자 페이지 (Admin Site)우리가 운영을 하다보면..실제 서비스를 운영하다보면 서비스를 관리하는 페이지가 필요합니다.모든 관리자에게 DB를 열어주거나, 매번 SQL을 입력해서 보거나 수정할 수 는 없기때문입니다.(콜센터 직원 등, 비개발자들이 디비에 접근해야할 경우를 위해!)→ 이런 이유로 관리자용 페이지가 필요합니다. Django의 Admin SiteDjango는 기본적으로 관리자 사이트를 제공하고 있습니다. (심지어 이쁨)Django Framework를 선택하는 이유가 되기도하는 강력한 장점 중 하나입니다.직접 record를 조회, 생성, 수정, 삭제할 수 있는 모든 기능을 제공합니다.이외에도 각종 권한 부여를 해서 제한하거나, 페이지 자체를 커스텀 하는 것도 가능합니다!project app..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/FYFzv/btsJxVHuzK3/yesU48XAoD6oW5nGSos470/img.png)
Static Files정적 파일(멈춰있는 파일)을 의미합니다.서비스 로직에서 별도의 처리 없이 보여주기만 하면 되는 파일을 의미합니다.서비스 이미지 파일(로고, 광고 이미지 …)자바스크립트파일, CSS 파일 등이러한 서비스 로직과 다르게 그냥 무조건 주기만 하면 되는 파일들이기 때문에 모아서 따로 제공할 수 있습니다.사용해보기 정적인 데이터를 "보여준다"는 건 response인건데response가 있다는건 request도 있어야한다는 것이다.스태틱데이터가 request를 어떻게 한다는 걸까? → url로 요청한다. → 이렇게 스태틱 파일들의 url을 설정해주는게 static_url STATIC_URLstatic 파일을 참조할 때 사용할 url입니다.개발 단계에서는 기본적으로 app/static 폴더 생성..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/vSJh1/btsJxUoh7kf/0TQ7y3bCBCRsqkdcVNK491/img.png)
PydanticPydantic은 Python에서 데이터 검증과 설정을 쉽게 해주는 라이브러리입니다.주로 데이터의 유효성을 검사하고, 잘못된 데이터 형식을 자동으로 오류로 처리하는 데 사용됩니다.Pydantic의 주요 기능 중 하나는 데이터 모델을 정의하고 이를 통해 데이터를 검증하는 것입니다. 기본 사용법1. 설치pip install pydantic 2. 모델 정의Pydantic의 BaseModel을 상속하여 데이터 모델을 정의합니다.모델의 필드에는 타입 힌트를 추가하여 데이터의 타입을 지정할 수 있습니다.from pydantic import BaseModelclass User(BaseModel): id: int name: str email: str 3. 데이터 검증모델을 사용하여 데이터..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bc9Ee9/btsJmIWojdU/vbTF5XTvBAXLNIkP9ZRvQ1/img.png)
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 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b9VOZN/btsJkXlYQsH/HCf7lPW3akMJECSEZd1w70/img.png)
보통 글작성하면 이화면이 나오지는 않죠?글을 작성한 뒤 글 목록 페이지를 보여주도록 수정해볼까요?→ 아 ! 그러면 /create/ 경로에서 create.html 을 랜더링하는게 아니라 articles.html 을 랜더링하면 되지! …. ?글목록 어디갔지?url은 왜 /articles/create/ 지?→ html만 다른 템플릿으로 랜더링 했을뿐, 실제로 url이 이동해서 GET 요청을 보낸 것이 아닙니다! → 단순히 랜더링 해주는게 아니라, 리다이렉트(내가 지정한 url로 돌려보내는 것)를 해줘야한다. redirect 사용하기redirect는 지정한 URL로 되돌리는 것을 말합니다.우리가 웹 사이트를 이용하면서 많이 봐왔던 동작 방식입니다.articles/views.pyfrom django.shortc..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/RVJAV/btsJgzxTtHL/jbO0hwQaSNhFKedWuELrFk/img.png)
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] ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ceN2H5/btsI93789XK/OjK3SoVNTsJk2ksbs2GelK/img.png)
Django framework로 웹 프로그램을 만드는 프로젝트 중..css 파일을 작성해줬지만 해당 화면에 적용이 되지 않았다. 분명히 padding을 줬는데 반영이 되지 않는 상황 ㅠㅠ 처음에는 파일 경로의 문제인가? 싶었지만 그건 아니였다.파일 위치의 문제인 지 확인 하는 법확인하는 방법은 다음과 같다. 1. 파일시스템에서 직접 파일 경로 확인 나 같은 경우는, 프로젝트의 모든 템플릿 html파일들이 상속하는 부모템플릿이 되는 base.html을프로젝트 디렉토리/templates에 넣어주고,style.css파일은 products앱 디렉토리 아래에 products/static/products/css/style.css 넣어주었다. 2. Django 설정 확인from pathlib import Pat..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dpvFCA/btsI9x8rO5i/Lmaq9kK6tpbTppUzU0AEG0/img.png)
Model저장할 데이터에 대한 필드와 동작들을 포함한 데이터베이스 구조 (layout)입니다.Django는 Model을 이용해서 데이터를 조작합니다.일반적으로 하나의 Model은 하나의 데이터베이스 테이블을 의미합니다.데이터베이스(Database)잘 정리된 데이터가 모여있는 것입니다.쿼리(Query)데이터베이스를 조작할 수 있는 언어입니다.스키마(Schema)데이터베이스의 구조, 관계 등을 정의한 것입니다.→ 전반적인 명세서라고 할 수 있어요!🔽 스키마 예시더보기사용자 (Users)사용자 ID (User_ID) - 정수 (Integer)이름 (Name) - 문자열 (String)이메일 (Email) - 문자열 (String)주소 (Address) - 문자열 (String)책 (Books)책 ID (Bo..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bdmugi/btsI5SD2vNv/P6PUZiENNo9FOy9XsYvBD1/img.png)
데이터 주기 (Form과 input)클라이언트가 서버에게 데이터를 보내는 방법 예시 - 회원가입 HTML Form 요소웹에서 유저에게 데이터를 입력받는 여러가지 형식을 제공합니다.→ 버튼, 텍스트, 드랍다운, 선택 등유저의 데이터를 서버로 전송하는 역할을 합니다.action과 method→ 데이터를 어디로(action) 어떤 방식(method)를 이용해서 보낼지 결정하는 속성 사용자 이름: 이메일 주소: 비밀번호: 전송버튼의 타입은 꼭 submit으로 해줘야 이 form의 데이터를 전송할 수 있다!name이 서버에 전달되는 키 값이다. → name을 적어주면 전송버튼을 눌렀을때 URL에 ?message=~이 뜬다.→ name을 안적어주면 ..