일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 장고
- 성수동카페
- 부스트코스
- 아스키코드
- python3
- 상속
- JavaScript
- 자바
- c언어문자열
- richtext
- Python
- 추상클래스
- 강원도속초맛집
- 남양주맛집
- 건대입구맛집
- 속초여행
- Django
- popupmenubutton
- FLUTTER
- BeautifulSoup
- 가상환경
- pipenv
- 포인터
- removetooltip
- 코딩독학
- 컴퓨터과학
- DOM
- 알고리즘
- 정렬알고리즘
- 노마드코더
- Today
- Total
목록전체 글 (108)
YUYANE
학습 강의 nomadcoders.co/airbnb-clone/lobby 지금까지 models.py를 통해 데이터 구조도 만들고, 데이터를 불러올 수도, 저장할 수도 있었다. 오늘은 조금 더 깊숙이 들어가 장고가 어떻게 데이터를 관리하고 있는 지 알아보자. QuerySet - 데이터베이스에 있는 객체들의 집합 - model의 Manager를 통해 QuerySet을 얻을 수 있다. Django Managers - 장고 models는 데이터베이스 쿼리 작업을 할 수 있는 인터페이스를 제공하는데, 이것은 Manager라고 한다. - 장고 앱의 각각의 모델에는 적어도 하나의 Manager가 존재한다. - 클래스명.objects를 통해서 Manager를 부를 수 있다. ex) Person.objects Manage..
Meta Class Model metadata는 모델에서 필드가 아닌 것을 가리키며 Meta class를 통해 구현된다. 필수가 아닌 옵션으로 아래 링크에서 목록을 확인할 수 있다. docs.djangoproject.com/ko/3.1/ref/models/options/ Abstract Base Class - 여러가지 모델에서 공통으로 사용되는 정보가 있을 때 유용한 클래스 - 클래스의 Meta클래스에서 'abstract=True'라고 적음으로써 정의(abstract의 default 값은 False) - 데이터베이스 테이블 생성에는 사용되지 않으나, 다른 클래스가 상속할 경우에 해당 크래스(child class)의 필드로 추가된다. - manager 를 가지지 않고, 초기화되거나 직접적으로 저장될 수 없..
학습 강의 nomadcoders.co/airbnb-clone/lobby Django Admin Interface 장고 앱에서 모델을 생성하면, 신뢰할 수 있는 유저(일반 유저x, 웹마스터 o, 프론트엔드용이 아니다)가 웹사이트를 모델 중심으로 관리할 수 있는 인터페이스가 자동으로 생성된다. ModelAdmin ModelAdmin 클래스는 admin 인터페이스에 있는 모델을 나타내며, 보통 admin.py 에 저장되어있다. 우선 예시 먼저 살펴보자. myapp의 models.py의 Author 클래스를 admin.py에 연결하려고 한다. 아래 두 가지 방법 중 어느 것을 사용해도 상관 없다. - 사용 코드 예시 (1) from django.contrib import admin from myproject.m..
학습 강의 www.boostcourse.org/cs112/joinLectures/41307 malloc () ptr = (cast-type*) malloc(byte-size) ptr = (int*)mallox(100*sizeof(int)); int 형의 크기는 4바이트이므로, 위의 코드는 400 바이트의 메모리를 할당하며, 포인터 ptr은 할당된 메모리의 첫 번째 바이트 주소를 가진다. - 각 블록을 default garbage 값으로 초기화 시킨다. - 배열 크기 수정할 때, 문자열 복사 할 때 등 사용 가능하다. - 정해진 크기 만큼의 메모리를 할당하는 함수 - 메모리 할당 이후에는, 유한한 메모리를 효과적으로 관리하기 위해 반드시 free()를 이용하여 메모리 해제를 시켜줘야 한다. 그렇지 않으면 ..
학습 강의 nomadcoders.co/airbnb-clone/lobby Relation Fields 장고 프로젝트는 여러 가지 앱으로 이루어진다. 앱 마다 데이터를 다루는 models.py 파일을 가지고 있는데, 하나의 models.py이 데이터를 카테고리에 따라 클래스로 분류한 다양한 데이터 모델 클래스들을 가질 수 있다. 에어비앤비 클론 코딩을 한다면, Rooms 라는 앱의 models.py 에 Room class, Facility class 등이 있는 경우를 예로 들 수 있다. 작업을 하다보면 Room 클래스의 필드(host)가 User 클래스의 필드(name)를 참조하는 것처럼 필드간의 상호작용이 생기는 경우가 있다. 이 때 활용할 수 있는 것이 ForeignKey와 ManyToManyField ..
학습 강의 nomadcoders.co/airbnb-clone/lobby 지난 포스팅(1y9u9j2in.tistory.com/178)에서 장고의 모델은 데이터를 담당한다고 배웠다. 오늘은 모델에서 사용되는 필드 타입에 대해 배워보자. Model Field? 데이터에는 여러 가지 타입이 있다. 예를 들어 회원가입을 할 때 입력해야 하는 것들을 생각해보자. 이름은 텍스트, 나이는 숫자, 국가는 선택, 결혼 여부 등 평소에는 별 생각 없이 입력했던 정보였지만, 따지고 보면 서로 다른 타입들을 가지고 있다. 따라서 데이터를 다루는 장고 모델에서도 여러가지 타입의 데이터를 처리할 수 있도록 Model Field라는 것이 존재하는데, 데이터 베이스 테이블 중에서 열을 나타낸다. Model Field Import 필드..
학습 강의 nomadcoders.co/airbnb-clone/lectures/868 지난 번 models.py 포스팅(1y9u9j2in.tistory.com/178)에서 데이터에 변형이 있을 경우에 migration 작업을 해줘야 한다고 잠깐 언급했었다. 오늘은 장고 migration에 대해 배워보자! 모델에서 데이터에 변화가 생겼는데(필드의 생성/수정/삭제 등), migration 작업을 하지 않은 채 서버를 동작하면 위와 같은 오류가 발생한다. 데이터베이스에서 변화된 데이터의 모형이 동기화되지 않았기 때문이다. 장고와 SQL 장고는 데이터베이스로 SQL을 사용한다. 그런데, SQL은 데이터에 변화가 일어나도 스스로 알아차리지 못한다. 그래서 장고가 migrations 작업을 통해 모델에서 일어난 데이..
학습강의 nomadcoders.co/airbnb-clone/lectures/858 Django-admin을 통해 앱을 생성하면 아래와 같은 폴더가 자동으로 생성된다. 오늘은 models 파일에 대해 알아보자! models.py ? 데이터를 정의하고, 데이터 구조가 어떻게 생겼는 지를 코드로 작성하여 저장하는 곳 우리가 저장할 데이터 구조를 models.py에 작성하면, 장고가 그 코드를 읽어 구조에 맞게 데이터를 생성한다. * 주의 : 우리는 장고라는 프레임워크를 사용하고 있는 것이므로 함부로 파일명을 바꾸면 안된다! 파일 구조는 아래와 같이 생겼다. from django.db import models class HouseRule(AbstractItem): """ HouseRule Model Defini..