본문 바로가기

728x90

분류 전체보기

(87)
[Algorithm] 백준 2577번 문제풀이 다음은 제가 직접 푼 백준 2577번 문제풀이입니다. a = input() b = input() c = input() s = int(a) * int(b) * int(c) d = dict() for i in range(10): d[str(i)] = 0 for i in range(len(str(s))): d[str(s)[i]] += 1 for val in d.values(): print(val)
[AWS] Elastic Beanstalk - Auto Scaling Error Elastic Beanstalk 을 배포하여 사용하고 있는 도중에 다음과 같은 문구의 경고를 받았습니다. 100 % of CPU is in use. 그래서, Elastic Beanstalk 환경의 구성에 가서 인스턴스의 유형을 바꿔서 재배포를 하던 와중에 다음과 같은 에러가 발생하였습니다. ERROR Service:AmazonCloudFormation, Message:Stack named 'awseb-e-ka4mcdgpnn-stack' aborted operation. Current state: 'UPDATE_ROLLBACK_IN_PROGRESS' Reason: The following resource(s) failed to update:[AWSEBAutoScalingGroup]. ERROR Updati..
[Git] Gitflow 협업을 하다보면 Git 은 필수인 시대가 되었습니다. Git 을 사용하다보면 하나의 규칙으로 사용하는데 필요성을 느낍니다. 이러한 개발자들을 위해 Gitflow, Github flow, Gitlab flow 등의 Workflow 전략들이 제시되었습니다. Gitflow Gitflow 는 가장 최초로 제안된, 그리고 가장 유명한 Git Workflow입니다. Gitflow 는 브랜치 전략에 있어서 다른 Workflow 보다 엄격합니다. 때문에 이 Workflow 는 대규모의 프로젝트를 관리하는데 적합한 것으로 평가 받고 있습니다. 또 Gitflow 는 계획적인 릴리즈 계획을 갖고 있는 프로젝트에 유용하게 사용할 수 있습니다. Gitflow 의 브랜치 전략 Gitflow 의 작업 방식을 이해하려면 Gitflo..
[Django] User Model 확장 (5) - AbstractBaseUser 모델 상속한 사용자 정의 User 모델 사용하기 AbstractBaseUser 모델 상속한 사용자 정의 User 모델 사용하기 개요 AbstractBaseUser 모델을 상속한 User 모델을 만들고 settings.py에 참조를 수정하는 것은 AbstractUser 모델을 상속하는 것과 같다. 따라서 마찬가지로 프로젝트 시작 전에 이 기법의 사용 여부를 결정하는 것이 바람직하다. 그런데 AbstractUser 모델을 상속하는 방법과 달리 로그인 아이디로 이메일 주소를 사용하도록 하거나 Django 로그인 절차가 아닌 인증 절차를 직접 구현하고자 할 때 사용할 수 있다. 예를 들어, 기존에 운영 중이던 PHP 솔루션의 회원 디비를 그대로 재사용하고자 한다면 AbstractBaseUser 모델을 상속한 User 커스텀 모델을 만들어야 한다. 단점은 운영..
[Django] User Model 확장 (4) - AbstractUser 모델 상속한 사용자 정의 User 모델 사용하기 AbstractUser 모델 상속한 사용자 정의 User 모델 사용하기 개요 AbstractUser 모델을 상속한 User 모델을 만들어 settings.py에 참조를 수정해야 한다. 이 기법의 사용 여부는 프로젝트 시작 전에 하는 것이 좋다. 추후에 settings.AUTH_USER_MODEL 변경시 데이터베이스 스키마를 알맞게 재수정해야 하는데 사용자 모델 필드에 추가나 수정으로 끝나지 않고 완전히 새로운 사용자 객체를 생성하는 일이 된다. 이 기법은 기존 Django의 User 모델을 그대로 사용하므로 기본 로그인 인증 처리 부분은 Django의 것을 이용하면서 몇몇 사용자 정의 필드를 추가할 때 유용하다. 구현 #필요한 모듈 임포트 ... from django.contrib.auth.models ..
[Django] User Model 확장 (3) - User 모델과 OneToOneField의 프로필 테이블 추가하기 User 모델과 OneToOneField 관계의 프로필 테이블 추가하기 개요 기존 User 모델과 OneToOneField로 일대일관계를 맺는 Django 모델을 추가해서 사용자에 관한 정보를 저장하는 것이다. 더보기 OneToOneField란? OneToOneField는 1:1 관계를 의미합니다. 저는 이 관계를 django에 기본적으로 정의되어 있는 User 모델과 이를 확장(customizing)하여 새로 만드는 Profile 모델을 연결해 줄 때 자주 사용합니다. django 에서의 사용 예시 class User(AbstractBaseUser): # 생략 class Profile(models.Model): user = models.OneToOneField(User, on_delete=models...
[Django] User Model 확장 (2) - 프록시 모델 사용하기 프록시 모델 사용하기 개요 프록시 모델이란 새 테이블을 추가하는 등의 데이터베이스 스키마의 변경 없이 단순히 상속한 클래스입니다. 더보기 스키마란? 데이터베이스 구조와 전반적인 제약조건에 관한 명세를 기술한 것입니다. 자세히 말하면, 개체의 특성을 나타내는 속성(Attribute)와 속성들의 집합으로 이루어진 개체(Entity), 개체 사이에 존재하는 관계(Relation)에 대한 정의와 이들을 유지해야 할 제약조건들을 기술한 것입니다. 쉽게 말하여, 데이터베이스 내에 어떤 구조로 데이터가 저장되는가를 나타내는 데이터베이스 구조를 스키라라고 합니다. 정렬 순서 같은 기존 모델의 동작을 변경하거나 새로운 메소드를 추가하기 위해 사용합니다. 데이터베이스에 부가적인 사용자 정보를 저장할 필요가 없을 때 사용하..
[Django] User Model 확장 (1) - 4가지 방법 한국에서는 User Model을 확장한다고 하지만, 공식 문서에서는 Customizing 한다고 합니다. User 모델을 확장하는 기법에는 4가지가 있습니다. 프록시 모델 사용하기 User Model과 일대일 관계의 프로필 데이터 추가하기 AbstractUser 모델 상속한 사용자 정의 User 모델 사용하기 AbstractBaseUser 모델 상속한 사용자 정의 User 모델 사용하기

728x90