본문 바로가기

반응형

DEVELOPMENT

(38)
DEVELOPMENT/django [Python] 데코레이터(Decorator) python 으로 작성된 다른 코드들을 보다보면 아래와 같이 어느 함수 위에 @ 가 있는 걸 볼 수 있다. 이 @ 는 무엇을 나타내고 어떤 역할을 하지는 알아보자. @decorator def function1(): print("decorator") decorator 란? 제목에서 알 수 있듯이 함수 위에 @로 붙혀져 있는 것이 바로decorator이다. 사실 데코레이터가 없다고 해서 구현을 못하는 일이 생기는 건 아니지만 코드가 복잡해진다. 즉 데코레이터를 사용하면 사용자가 편리해진다. decorator 는 사실 하나의 함수이며, 다른 함수를 감싸고 있는 형태의 함수이다. def decorator(func): def deco_func(): print("decorator") func() return dec..
DEVELOPMENT/django [django] JWT 사용하기 적용하기 1. 설치하기 pip install djangorestframework-jwt 2. 셋팅하기 settings.py 파일에 drf-jwt의 설정을 추가해준다. //settings.py ... REST_FRAMEWORK = { 'DEFAULT_PERMISSION_CLASSES': ( 'rest_framework.permissions.IsAuthenticated', ), 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework_jwt.authentication.JSONWebTokenAuthentication', 'rest_framework.authentication.SessionAuthentication', ), } ... urls.py 토큰을 발행할 주소를 설정해..
DEVELOPMENT/django [django] restful-api 사용하기 DRF란 백엔드(Django)와 프론트를 분리하기 위해서 사용한다.Django내에서 템플릿 작업까지 모두 마친다고 하면, 사실 DRF까지 필요 없겠지만, 프론트와 백엔드 개발자가 나뉘어서 함께 협업해야 하는 경우 등에 사용할 수 있다. DRF를 사용하여 특정 uri로 get/post/put/delete/ 등의 요청을 하면, 데이터를 받아올 수 있게되고 이 데이터를 프론트에서 구독해서 개발을 진행한다. django만 사용하면 {{% '---' %}} 식으로 django filter를 이용하여 직접 템플릿에 입력하는데 이러는경우, 개발자간의 혼란이 유발될 수 있다. https://www.django-rest-framework.org/ Home - Django REST framework www.django-r..
DEVELOPMENT [AWS] AWS CLI 설치하기 AWS CLI AWS Command Lne Interface(이하 CLI)는 AWS 서비스를 터미널에서 명령어 기반으로 컨트롤하는 도구이다. AWS SDK for Python (Boto)를 기반으로 되어 있으며, AWS의 모든 서비스를 관리할 수 있다. 리눅스는 Bash, Zsh, tsch 등의 일반적인 셸 프로그램을 사용하여 Linux, macOS, or Unix에서 명령을 실행하며, Window는 Microsoft Windows의 PowerShell 또는 Windows 명령 처리기(CMD)에서 사용할 수 있다. 또한 원격으로 putty 혹은 SSH등의 터미널을 이용할 수 도 있다. AWS CLI 설치하기 for MacOS $ curl "https://awscli.amazonaws.com/AWSCLIV..
DEVELOPMENT/django [django] AWS S3와 연동하기 기본적으로 AWS S3 bucket을 만들어 두었다고 가정하고 진행한다. AWS S3 Simple Storage Service로, 미디어, 정적 파일을 공유할 수 있는 서비스이다. 적용하기 1. django 설정하기 django에서 S3를 연동시키기 위해서는 두가지 라이브러리를 설치해야한다. pip install boto3 # boto3 : S3를 사용하기 위한 모듈이다. pip install django-storages # django-storages : 다양한 저장소를 사용하기 위한 모듈이다. 즉, django-storages를 통해 boto3를 사용한다. 이렇게 라이브러리를 설치 했으면 settings.py를 설정해주어야 한다. settings.py # 작업환경에 따라 다를 수 있으니 주의 # 추가..
DEVELOPMENT/Machine Learning [ADsP] 시험 요약본 OLTP(Online Transaction Processing) 온라인 트랜잭션 처리 복잡하게 말하면 복수의 사용자 PC에서 발생되는 트랜잭션(Transaction)을 DB서버가 처리하고, 그 결과를 요청한 사용자PC에 결과값을 되돌려주는 과정 쉽게 이야기하면 1개의 요청작업을 처리하는 과정 무수히 많이 발생되는 각각의 작업요청을 오류없이 처리하고, 그 결과값을 실시간으로 확인시켜줘야 함을 의미 조금 복잡하게 말하면 1개의 트랜잭션에서 발생되는 INSERT, UPDATE, DELETE의 과정을 무결성을 보장하여 처리하고 그 결과를 SELECT 하는 과정을 우리는 OLTP라고 부릅니다. OLAP(Online Analytical Processing) 온라인 분석 처리 정도. OLTP가 데이터 자체의 처리에 ..
DEVELOPMENT/django [django] seed 편하게만드는 방법, django_seed command 만들기 management 폴더를 만들어서, management 파일 안에 __init__.py 를 만들어서, 장고 파이썬 폴더라는 것을 알려준다. 그다음에 commands 폴더를 만들어서 그 안에 명령어 파일을 만들어 준다. 만들 첫 커맨드는, seed를 주는 것, 즉 코드로 모델의 objects를 만드는 것이다. 모듈과 상호작용을 해보자. 장고 시드는 가짜들을 만들고 faker라는 것을 사용한다. faker라는 것은 모듈을 보고 갖고 있는 것을 보고 칼럼의 타입을 보면서 데이터를 넣어준다. 수동으로 할 수 있지만 가짜 데이터들을 만들어준다. pipenv install django_seed config.setting에 넣어주고, 잘 되나 문제 없는지 확인해주고 장고 시드를 임포트 해서 얼..
DEVELOPMENT/django [django] 유저 다중모델 '서버에서 유저모델이 두개가 있으면 좋겠다.' 라고 생각해서 'AbstractBaseUser로 두개의 유저모델을 만들어 따로 관리하자' 하고 다 작성하고 런 시키는순간 에러가 발생했다. 현재의 서버에는 AUTHUSERMODEL로 모델을 지정해 주고 있는데 지정된 모델과 사용하고 있는 유저모델이 달라서 에러가 나는것이었다. 스택오버플로우에서 검색해보니, django는 다중유저 모델을 지원하지않는다고 한다. 방법은 아래 두가지. 1. 기능별로 유저를 나누고 싶다면 권한별로 나누어라 2. 유저에 추가 필드를 받고싶다면 FK로 엮어라
DEVELOPMENT/django [django] MySQL 연동하기 적용하기 1. MySQL 설치하기 아래 링크를 참조하여 차례대로 설치해준다. dev.mysql.com/downloads/mysql/ MySQL :: Download MySQL Community Server Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS FreeBSD Source Code Select OS Version: All Wind dev.mysql.com Workbench가 필요하..
DEVELOPMENT/Network [NAS] 주식 데이터 NAS에 수집하기 - MySQL Workbench와 NAS Maria DB 연결하기 MySQL Workbench 에서 MySQL Connection을 저장해둘 수 있다. NAS로 돌아가서, MariaDB 10의 TCP/IP 연결을 활성화 해준다. MySQL Workbench에서 +버튼을 눌러주어서 적어준다. 제어판의 네트워크 내용을 참고해서 다 적어준 다음에 Test Connection을 해주면 연결이 된다. 연결이 정상적으로 되면 아래와 같은 경고창이 뜨는데, 무시하고 진행하면 된다.

반응형