2024/12 31

스파르타 AI-8기 TIL(12/21)-Django

DRF Single Model(CRUD)단일 모델에서 데이터를 조회해서 직렬화(Serialization)하여 JSON으로 응답하기를 반복합니다.결국 핵심은1. 데이터 조회2. 직렬화3. JSON으로 응답입니다ModelSerializer 결국 Model의 여러가지 필드들을 어떻게 직렬화해서 데이터의 포맷을 잡을지가 핵심입니다. Django의 Model → ModelForm 사용과 굉장히 유사한 형태입니다.자 다시 시작하는 마음으로 urls., views 전부 제거참고로 templates는 이제 안 쓰기에 제거그리고 urls과 views를 새롭게 만들어 줍니다.(이 DRF의 함수로 만드는 views는 API 데코레이터 아시죠? DRF의 함수의 경우 이거 안 쓰면 무조건 에러)아, 참고로 ()안에 아무것도 안..

카테고리 없음 2024.12.21

스파르타 AI-8기 TIL(12/20)-Django

RESTful API웹에 대한 소프트웨어 설계 방법론 REST -REpresentational State Transfer REST(Representational State Transfer)는 네트워크 상에서 클라이언트와 서버 간의 상호작용을 정의하는 아키텍처 스타일입니다. 그래서 이 개념을 가져다가 API로 만든것이 RESTful API라고 한다.그래서 RESTful API란? 먼저, RESTful API에POST는 생성, GET은 조회, DELETE는 삭제, PUT은 전체적인 수정이 들어갈 때, PATCH는 일부를 수정할 때 쓰인다. JSONJSON(JavaScript Object Notation) JS 표기법을 따른 일종의 데이터를 담는 형식 - XML, CSV, YAML 등..

카테고리 없음 2024.12.20

스파르타 AI-8기 TIL(12/19)-Django

자, 알아야 할 것이 있습니다먼저forms와 models의 관계어제 설명이 잘못되었음을 튜터님을 통해 느꼈다.먼저, 저 fields는 get_user_model()에 있는 fields들을 말하는 것이였다.즉, 저것만 가져온다는 것이다. 그리고 저 UserChangForm을 상속 받는것은, 사실 중요한 의미가 있다.우리가 model을 바꾸고 fields를 바꾸면, 딱 그 부분만 바뀐다는 소리입니다.즉, 안에 함수, 뭐 여러가지 기능은 그대로 가져옴과 동시에, 딱 저 부분만 바꿔서 새로 만들어진 것을 쓴다는 소리입니다.예를 들어, 기어 1,2,3이 있다고 했을 때, 딱 기어 1,2는 들고오지만, 3에서 뭐 기어의 숫자를 바꾼다던가 해서 3만 바꾼채로 기어 1,2,3을 쓰겠다는 소리입니다.역참조?먼저 fore..

카테고리 없음 2024.12.19

스파르타 AI-8기 TIL(12/18)-Django

자자자자,오늘은? 솔직히 할 시간이 없다...Why? 개인과제가 그렇게 썩 좋지는 않아서...지금 계속 하는 중.....당분간은 TIL에 그렇게 많은 글이 적히지는 않을 듯 합니다. font-family: Arial, sans-serif; /*(전체 페이지의 기본 글꼴 설정) */ margin: 0; /* body에 적용 (기본 여백 제거) */ padding: 0; /* body에 적용 (기본 패딩 제거) */ background-color: rgb(187, 209, 244); /* (배경색 설정) */ display: flex; /* body에 적용 (flexbox를 사용하여 세로 배치) */ flex-direction: co..

카테고리 없음 2024.12.18

스파르타 AI-8기 TIL(12/17)-Django

Django Admin관리자 페이지자, 배포를 하면 무조건 사용자의 문의가 온다. 나중에는 사용자의 정보를 다루게 될 지도 모른다. 그런 민감한 정보에는 전부 접근을 할 수 없기에 뭐가 필요하다? 관리자용 페이지가 필요하다.그래서 만든다? ㄴㄴ 장고가 다 제공해줍니다.어디있다? 처음 프로젝트를 만들 때 url에 보면 admin이라는 path가 있습니다. 바로 그것이 관리자 페이지입니다.그 path로 가서 superuser의 계정으로 접속하면 됩니다.참고로관리자 페이지에서 사용할 모델은 직접 등록해주는것이 필요합니다. 각 앱의 admin.py에서 설정 가능합니다.이렇게참고로 커스텀도 넣을 수 있습니다(검색바 넣기 등..)그리고 그냥 데코레이터로 상속 시키면 됩니다.Model Relationshipapp과 ..

카테고리 없음 2024.12.17

스파르타 AI-8기 TIL(12/16)-Django

Django Static and MediaStatic Files정적 파일(멈춰있는 파일)서비스 로직에서 별도의 처리 없이 보여주기만 하면 되는 파일을 의미합니다. 서비스 이미지 파일(로고, 광고 이미지 …) 이러한 파일들은 그냥 주기만 하면됩니다.그냥 CSS 파일을 만들어서 계속 주기만하면 된다.이러한 서비스 로직과 다르게 그냥 무조건 주기만 하면 되는 파일들이기 때문에 모아서 따로 제공할 수 있습니다.settings에서이 부분입니다.그리고 settings에서 따로 설정해야하는 것들이 있습니다.1. STATIC_URLstatic 파일을 참조할 때 사용할 url입니다.- 개발 단계에서는 app/static경로 및 settings의 STATICFILES_DIRS에 정의된 경로 참조 - 실제 디렉토리 경로가 ..

카테고리 없음 2024.12.16

스파르타 AI-8기 TIL(12/15)-Django

이어서 하기request.POST......??? request.user???자 여기를 보면 아니 request는 처음 요청하면 생기고 요청된 데이터를 전부 호함하고 있는거 아닌가? 왜 저렇게 .user ,.POST 각각 따로 가지고 있지?자, 여기서 조금 오해가 생길 수 있습니다. 자,request.POST는 HTML 폼에서 보낸 데이터를 딕셔너리처럼 저장한 것입니다. 로 제출된 모든 데이터가 여기에 들어갑니다. 예를 들어 폼에 "이름", "이메일" 필드가 있다면, 그 값들이 request.POST에 담깁니다. {% csrf_token %} {{ form.as_p }} 변경하기 여기서 POST 요청을 보내면 request.POST에 폼 데이터가 저장이 됩니다.request.user는 현..

카테고리 없음 2024.12.15

스파르타 AI-8기 TIL(12/14)-Django

여러가지 HTTP 요청 메서드지금까지 배운것renderredirect이것말고도 더 있다.get_object_or_404() - get을 호출한 후 객체가 없다면 404 에러를 raise하여 404 페이지로 이동시킵니다.get_list_or_404() - filter를 호출한 후 빈 리스트라면 404 에러를 raise하여 404페이지로 이동합니다.400번대 코드, 즉 403, 404와 같은 코드라면 클라이언트의 요청에 문제가 있음을 나타내고500번대 코드는 서버 내부에 문제가 생겨 요청을 처리할 수 없다는 것을 나타냅니다.존재하지 않는 게시물을 조회하려고 했기 때문에 클라이언트의 요청에 문제가 있음을 나타내는 400번대 상태코드(404 Not Fount)가 더 적절하다.저 숫자를 상태 코드라고 한다.100..

카테고리 없음 2024.12.14

스파르타 AI-8기 TIL(12/13)-Django

URL Namespacearticles, users 두개의 앱을 가지고 있는데, 만약 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 = [ ... path("hello/", views.hello, name="hello"), ...]이럴 ..

카테고리 없음 2024.12.13

스파르타 AI-8기 TIL(12/12)-Django

리다이렉트(redirect)Django에서 리다이렉트(redirect)는 사용자를 한 URL에서 다른 URL로 이동시키는 작업입니다. 웹 애플리케이션에서 주로 요청에 따라 적절한 페이지로 연결하거나 요청 처리 후 결과를 보여줄 페이지로 이동할 때 사용됩니다.쉽게 말해, 내가 지정한 URL로 작업이 끝나면 그 URL로 돌려보내란 뜻입니다.리다이렉트의 기본 개념 리다이렉트는 서버가 클라이언트(브라우저)에게 "다른 곳으로 가라"라고 알려주는 HTTP 응답입니다. 이 응답은 보통 302 Found 상태 코드를 사용하여 브라우저에게 새 URL로 이동하라고 지시합니다. 흔한 사용 사례 폼 제출 후 이동: 데이터를 저장한 후 확인 페이지로 이동. 중복된 폼 제출 방지. 권한 문제: 로그인하지 않은 사용자를 로그인 페..

카테고리 없음 2024.12.12