- stack
- DB
- 쟝고
- drf
- M:N
- 큐
- Queue
- migrations
- distinct
- 완전검색
- delete
- Django
- Tree
- update
- SQL
- 백트래킹
- Vue
- 뷰
- outer join
- 트리
- regexp
- 그리디
- 통계학
- 이진트리
- ORM
- Article & User
- 스택
- create
- N:1
- count
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
목록2024/03 (10)
데이터 분석 기술 블로그

1. Migrations Migrations란, model 클래스의 변경사항(필드 생성, 수정, 삭제 등)을 DB에 최종 반영하는 방법입니다. 1.1 Migrations 핵심 명령어 2가지 model class를 기반으로 최종 설계도(migration) 작성 python manage.py makemigrations 최종 설계도를 DB에 전달하여 반영 python manage.py migrate 1.2 migrate 후 DB 내에 생성된 테이블 확인 2. 추가 Migrations 아래 그림과 같이 이미 생성된 테이블에 필드를 추가하고 싶을 땐 어떻게 해야 할까요? 2-1 추가 모델 필드 작성하기 # articles/models.py class Article(models.Model): title = mode..

Django Model Django Model은 DB의 테이블을 정의하고 데이터를 조작할 수 있는 기능들을 제공한다. 테이블 구조를 설계하는 청사진(blueprint)라고 한다. # articles/models.py class Article(models.Model) title = models.CharField(max_length=10) content = models.Textfield() django.db.models 모듈의 Model이라는 부모 클래스를 상속받습니다. Model은 model에 관련된 모든 코드가 이미 작성되어있는 클래스입니다. https://github.com/django/django/blob/main/django/db/models/base.py#L459 django/django/db/m..

#변경 전 {% url 'articles:index' %} 1. App URL mapping App URL mapping이란, 각 앱에 URL을 정의하는 것으로 프로젝트와 각 앱이 URL을 나누어 관리를 편하게 할 수 있습니다. 2번째 앱 pages 생성 후 발생할 수 있는 문제는 view 함수 이름이 같거나 같은 패턴의 url 주소를 사용하게 되는 경우가 있습니다. 이를 해결하기 위해서는 아래 코드와 같이 해결할 수 있으나 더 좋은 방법이 필요합니다. 따라서, URL을 각자 app에서 관리해서 문제를 해결할 수 있습니다. # firstpjt/urls.py from articels import views as articles_views from pages import views as pages_views..

URL dispatcher(운항 관리자, 분배기)란, URL 패턴을 정의하고 해당 패턴이 일치하는 요청을 처리할 view 함수를 연결(매핑)하는 것입니다. 앞서 설명드린 URL 관리의 문제점은 템플릿의 많은 부분이 중복되고, URL의 일부만 변경되는 상황이라면 계속해서 비슷한 URL과 템플릿을 작성해야 하는 것입니다. 1. Variable Routing Variable Routing이란, URL일부에 변수를 포함시키는 것으로 변수는 view 함수의 인자로 전달할 수 있습니다. 위에서 int, str과 같은 URL 변수의 타입을 Path converters라고 하고 5가지 타입을 지원합니다. #urls.py urlpatterns = [ path('hello//', views.greeting), ] # vi..

사용자 입력 데이터를 받아 그대로 출력하는 서버를 만들어 볼게요. 먼저 사용자 입력 데이터를 받는 로직을 throw라고 하고 출력하는 서버를 catch라고 하겠습니다. 1. throw 로직 작성 #urls.py urlpatterns = [ path('throw/', views.throw), ] # views.py def throw(request): return render(request, 'articles/throw.html') {% extends 'articles/base.html' %} {% block content %} Throw {% endblock content %} 2. catch 로직 작성 #urls.py urlpatterns = [ path('catch/', views.catch), ] #..

요청과 응답은 데이터를 보내고 가져오는 것입니다. HTML form element를 통해 사용자와 애플리케이션 간의 상호작용을 이해해야 합니다. 아이디 : 패스워드 : 실제 웹 서비스에서 form이 사용되는 예시 # urls.py urlpatterns = [ path('admin/', admin.site.urls), path('articles/', views.index), path('dinner/', views.dinner), path('search/', views.search), ] # views.py def search(request): return render(request, 'articles/search.html') {% extends 'articles/base.html' %} {% block c..

Django Template system이란, 데이터 표현을 제어하면서, 표현과 관련된 부분을 담당합니다. HTML의 콘텐츠를 변수 값에 따라 바꾸고 싶다면: Hello, Django! def index(request): context = { ‘name’: ‘Jane’, } return render(request, ‘articles/index.html’, context) Hello, {{ name }} 1. Django Template Languate(DTL) Django Template Languate(DTL)이란, Template에서 조건, 반복, 변수 등의 프로그래밍적 기능을 제공하는 시스템입니다. 1-1. Variable {{ variable }} render 함수의 세 번째 인자로 딕셔너리 데이..

1. Django 프로젝트와 앱 Django project는 애플리케이션의 집합으로 DB 설정, URL 연결, 전체 앱 설정 등을 처리합니다. Django application은 독립적으로 작동하는 기능 단위 모듈로 각자 특정한 기능을 담당하며 다른 앱들과 함께 하나의 프로젝트를 구성합니다. 쉽게 설명하자면, 프로젝트는 카페로 전체 설정을 담당하고 앱은 게시글, 댓글, 회원 관리등으로 DB, 로직, 화면입니다. Django 프로젝트 생성( 2024.03.23 - [백엔드] - Django에 대하여(2)_서버 실행하기 를 보시면 확인할 수 있습니다.)은 이전에 알려드렸으니 앱 생성과 등록을 알아봅시다. # 앱 생성(앱의 이름은 '복수형'으로 지정하는 것을 권장해요. python manage.py start..