일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- python
- 자바
- SQL
- 롤
- github
- 탐욕알고리즘
- 리그오브레전드
- 프로그래머스
- 백준
- 그리디
- 파이썬
- sort
- 라이엇
- git
- java
- API
- 스파르타내일배움캠프
- 코딩테스트준비
- drf
- 내일배움캠프
- Riot
- programmers
- 스파르타내일배움캠프TIL
- 알고리즘
- lol
- 코딩테스트
- 장고
- greedy
- 그리디알고리즘
- Django
- Today
- Total
목록스파르타 내일 배움 캠프 AI 웹개발 과정/Django framework (29)
Lina's Toolbox
Bootstrap 넣기📎 https://getbootstrap.combase.html의 head태그에 위 사진 속 CSS 링크를 첨부합니다.base.html의 body태그 마지막줄에 JS 링크를 첨부합니다.사이트 속 사용법을 참고하여 원하는 것을 코드에 적용합니다.Fontawesome 활용하기📎 https://fontawesome.com/좋아요 버튼 만들기base.html의 head에 Bootstrap 링크아래에 첨부합니다.검색하여 원하는 아이콘을 찾고, 복사하여 코드에 첨부합니다.React, Vue는 선택이므로 안써도된다!
ManyToMany RelationshipM:N 관계에 대해 이해해서 Django Model과 ORM을 활용하여 구현해보자! 좋아요 생각해보기🤔 좋아요 기능은 어떻게 구현을 해야할까요?⇒ 모든 기능은 로직을 고민하고 손으로 구현하는 방법 뿐입니다!좋아요 기능이 뭔가요?User가 Article에 좋아요(Like)를 누르는 것입니다.저장해야할 데이터는 뭘까요?User가 어떤 Article에 좋아요를 눌렀는지 저장하면 됩니다. 1차 구현User(1) - Article(N) :⇒ 한 명의 유저는 여러 Article에 좋아요를 누를 수 있으니까요!articles/models.pyclass Article(models.Model): title = models.CharField(max_length=50) ..
Custom User Model현재 UserModel은!Django의 기본 User Model을 사용하고 있습니다.대부분의 프로젝트에서는 User Model에 더 많은 기능들이 필요합니다.Django는 AUTH_USER_MODEL setting을 변경하여 기본 User Model을 대체할 수 있습니다.만약 기본 User Model을 사용하더라도 Custom User Model을 사용하는 것이 권장됩니다. 적용하기⚠️ 주의- AUTH_USER_MODEL 설정은 반드시 프로젝트 최초 마이그레이션에서 함께 진행하기를 권장합니다. - USER Model은 비지니스로직 깊숙이 관여되기에 중간에 변경하면 많은 변경사항을 야기합니다. User Model 정의하기accounts/models.pyfrom django.d..
Many to one relationships굉장히 흔히 사용되는 관계 1:N 관계 예시만약 Article에 Author라는 개념을 둔다면,하나의 Article은 한 명의 Author를 가질 수 있습니다.한 명의 Author는 여러개의 Article을 가질 수 있습니다.만약 Article에 Comment라는 개념을 둔다면,하나의 Article은 여러개의 Comment를 가질 수 있습니다.하나의 Comment는 하나의 Article을 가질 수 있습니다.Foreign Key외래키를 의미합니다.관계형 데이터베이스에서 한 테이블(A)의 필드 중 다른 테이블(B)의 행을 유일하게 식별이 가능한 키입니다.테이블(A)에 설정되는 Foreign Key가 반드시 다른 테이블(B)의 Primary Key일 필요는 없으나 ..
관리자 페이지 (Admin Site)우리가 운영을 하다보면..실제 서비스를 운영하다보면 서비스를 관리하는 페이지가 필요합니다.모든 관리자에게 DB를 열어주거나, 매번 SQL을 입력해서 보거나 수정할 수 는 없기때문입니다.(콜센터 직원 등, 비개발자들이 디비에 접근해야할 경우를 위해!)→ 이런 이유로 관리자용 페이지가 필요합니다. Django의 Admin SiteDjango는 기본적으로 관리자 사이트를 제공하고 있습니다. (심지어 이쁨)Django Framework를 선택하는 이유가 되기도하는 강력한 장점 중 하나입니다.직접 record를 조회, 생성, 수정, 삭제할 수 있는 모든 기능을 제공합니다.이외에도 각종 권한 부여를 해서 제한하거나, 페이지 자체를 커스텀 하는 것도 가능합니다!project app..
Static Files정적 파일(멈춰있는 파일)을 의미합니다.서비스 로직에서 별도의 처리 없이 보여주기만 하면 되는 파일을 의미합니다.서비스 이미지 파일(로고, 광고 이미지 …)자바스크립트파일, CSS 파일 등이러한 서비스 로직과 다르게 그냥 무조건 주기만 하면 되는 파일들이기 때문에 모아서 따로 제공할 수 있습니다.사용해보기 정적인 데이터를 "보여준다"는 건 response인건데response가 있다는건 request도 있어야한다는 것이다.스태틱데이터가 request를 어떻게 한다는 걸까? → url로 요청한다. → 이렇게 스태틱 파일들의 url을 설정해주는게 static_url STATIC_URLstatic 파일을 참조할 때 사용할 url입니다.개발 단계에서는 기본적으로 app/static 폴더 생성..
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..
PydanticPydantic은 Python에서 데이터 검증과 설정을 쉽게 해주는 라이브러리입니다.주로 데이터의 유효성을 검사하고, 잘못된 데이터 형식을 자동으로 오류로 처리하는 데 사용됩니다.Pydantic의 주요 기능 중 하나는 데이터 모델을 정의하고 이를 통해 데이터를 검증하는 것입니다. 기본 사용법1. 설치pip install pydantic 2. 모델 정의Pydantic의 BaseModel을 상속하여 데이터 모델을 정의합니다.모델의 필드에는 타입 힌트를 추가하여 데이터의 타입을 지정할 수 있습니다.from pydantic import BaseModelclass User(BaseModel): id: int name: str email: str 3. 데이터 검증모델을 사용하여 데이터..
한번에 하나의 일만 처리할수 있음-> 단점아닌가요? -> 오히려 장점임!여러 일이 동시에 일어날 때 순서를 보장하기 때문 Write back 패턴데이터 다 모아놨는데 날라가면그동안 모았던 데이터가 다 유실될 위험이 있다는 단점. Write Through두번 저장하므로 속도가 느린 단점 Write Around쓰기는 다 디비에 바로 저장하므로데이터가 유실될 가능성이 적다는 장점 Redis 사용 edis 서버가 실행되지 않아서 redis-cli 명령어가 연결을 시도할 수 없는 상태입니다. 문제를 해결하기 위해 다음 단계들을 시도해 보세요:Redis 서버 시작하기: Redis 서버를 실행하려면 별도의 터미널에서 다음 명령어를 입력하세요:Redis 서버가 정상적으로 시작된 것 같습니다! redis-serve..
퍼블릭 IPv4주소인스턴스 상태 - 인스턴스 재부팅 하면 바뀐다. -> 유동 ip 주소! 고정 ip주소를 쓰고 싶다면 ? -> 탄력적 IP주소를 발급 받으면됨 . (근데 유료임..)재부팅만 안하면 그대로이므로 우리는 지금은 그냥 해보자. 서버에서는 절대 makemigrations은 해주지 않는다!!migrate만 해준다. 이제 접속이 된다!! 💡 사실 이렇게까지만 하고 써도 되긴하지만,python3 manage.py runserver이렇게 하면 개발용으로 서버를 키는 것이다!!(Django에 내장되어있는 간단한 WSGI임)개발 서버는 20명정도만 동시 접속해도 펑 터짐...그러므로 배포할 때는 앞에 여러가지 장치를 붙여서 배포를 해야한다! 개발 서버에서 벗어나기지금까지 Django 서버를 실행..