일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 시뮬레이션
- aws
- 모의SW역량테스트
- django
- Priority Queue
- Trie
- SWEA
- gpdb
- DFS
- Algorithm
- Vue.js
- Linked list
- BFS
- Data Structure
- Back tracking
- spring boot
- boj
- SQL
- hash table
- JavaScript
- programmers
- 코테
- 코딩테스트
- GitHub
- Bruth Force
- 알고리듬
- Python
- 알고리즘
- 구현
- CSV
- Today
- Total
목록분류 전체보기 (177)
hotamul의 개발 이야기
[Django] User Model 커스터마이징 #5 (TDD)에서 super user 생성까지 해봤다. 이제 django admin 페이지에서 UI로 user를 관리할 수 있도록 해보자. user 목록 조회, user 수정 페이지, user 생성 페이지를 만들어보자. user_lists, edit_user page, create_user page : test 먼저 테스트를 만들어보자. user/test/test_admin.py를 추가하고 다음과 같이 setUp 메소드를 만든다. """ Tests for the Django admin modifications. """ from django.test import TestCase from django.contrib.auth import get_user_mod..
[Django] User Model 커스터마이징 #4 (TDD)에서 email serializing, Value 체크 기능을 추가했다. 이제 superuser를 생성하는 기능도 추가해보자. [Django] User Model 커스터마이징 #1에서 설명했던 것처럼 UserManager는 create_superuser 메소드가 있다. 현재 User 모델을 커스터마이징 했기때문에 create_superuser 메소드도 커스터마이징 해줘야 한다. create_superuser : test 먼저 test 코드를 작성해보자. test_models.py에 아래와 같은 test를 추가해 보자. def test_create_superuser(self): """Test creating a superuser""" user ..
[Django] User Model 커스터마이징 #3 (TDD) 에서 User, UserManager 클래스를 직접 커스터마이징 하여 user model을 생성하는 테스트를 통과하게 했다. 이제는 email normalizing 기능 추가와 email을 전달하지 않았을때 exception이 발생할 수 있도록 해보자. test 작성 먼저 [Django] User Model 커스터마이징 #2 (TDD)에서 작성했던 test_models.py에 다음과 같은 테스트를 추가해 보자. def test_new_user_email_normalized(self): """Test email is normalized for new users.""" sample_emails = [ ['test1@EXAMPLE.com&..
[Django] User Model 커스터마이징 #2 (TDD)에서 test 코드를 작성했고 username이라는 필수 인자 (field)가 없기 때문에 user model 객체를 생성할 수 없음을 확인했다. 그럼 이제 test가 pass 할 수 있도록 custom User model, custom UserManager을 만들어 보자. (UserManager는 user model 객체를 생성, 저장, return 해주는 클래스라고 #1에서 설명했다) User User 클래스는 두 가지 클래스 상속이 필요하다. (python은 다중 상속을 지원한다.) 먼저 app에 models.py 파일을 열고 아래와 같이 필요한 클래스 및 models를 import 한다. from django.db import mode..
[Django] User Model 커스터마이징 #1 에서 기본적인 Design을 했으니 이제 구현해보자. TDD로 개발하는 것을 연습? 공부 중이기 때문에 먼저 test case를 만들어 보겠다. Create test_models.py 커스터마이징 할 User model을 사용하고자 할 app 디렉토리에 tests 디렉토리를 생성한다. (반드시 __init__.py를 추가해야 한다. 그렇지 않으면 django가 찾지 못한다, python manage.py test 했을 때 실행되지 않음) 그리고 test_modesl.py 파일을 생성한다. (파일 이름, method이름 모두 prefix로 test_가 있어야 하는지 기억이 잘 나지 않지만 습관처럼 파일이름, method 이름 모두 test_로 시작하게 ..
Django의 Model 클래스인 User 클래스를 내가 원하는데로 커스터마이징 해보자. (username을 사용하지 않고 email을 사용하고 싶기 때문..) User 모델 이외에 다른 Model을 커스터 마이징 하는데에도 많은 도움이 될 거 같다. 먼저 사용할 클래스들은 AbstractBaseUser, PermissionsMixin 이다. AbstractBaseUser AbstractBaseUser 클래스는 User 모델을 커스터 마이징 하기 위해 필요한 클래스이다. 하지만 fields 들은 포함되지 않는다. (기본적으로 제공하는 fields가 없다는 뜻) 따라서 내가 원하는 fields들을 직접 정의해줘야 한다. PermissionsMixin PermissionsMixin 클래스는 django pe..
What is defined in the Dockerfile? The Dockerfile is used to build our image, which contains a mini Linux Operating System with all the dependencies needed to run our project. https://docs.docker.com/engine/reference/builder/ Dockerfile reference docs.docker.com
공식 문서 : https://docs.docker.com/compose/compose-file Compose specification docs.docker.com 기본 구조 version: "3.9" services: app: build: context: . ports: - "8000:8000" volumes: - ./app:/app command: > sh -c "python manage.py runserver 0.0.0.0:8000" build build 항목은 해당 서비스 이미지를 빌드하기 위한 Dockerfile이 위치하는 경로를 지정하기 위해 사용한다. docker-compose.yml 파일과 동일한 디렉토리에 위치한 경우 위와 같이 context: .으로 표시하면 된다. 특정 경로의 파일로 빌..
... RUN python -m venv /py && \ /py/bin/pip install --upgrade pip && \ /py/bin/pip install -r /tmp/requirements.txt && \ rm -rf /tmp && \ adduser \ --disabled-password \ --no-created-home \ django-user ... Dockerfile 에서 adduser 부분이 궁금해서 찾아봤다. 왜 adduser를 하는지 adduser 블록이 무슨 의미 인지 찾아봤다. adduser는 보안상의 이유에서 한다. root user는 모든 권한을 가지고 있다. 실행중인 application을 통해 해당 서버에 외부 사용자가 접근하여 의도적으로 공격?을 하려고 할 때 root..