일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 이직
- 코딩테스트
- 배열
- Java
- 인텔리제이
- dfs
- 도커
- spring boot
- 백엔드
- HashMap
- HTTP
- 명령어
- 구름LEVEL
- 주니어
- docker
- 스프링 부트
- 해결
- 개발자
- 스프링
- IntelliJ
- 스프링부트
- 구현
- spring
- 문자열
- bfs
- 프로그래머스
- 자료구조
- 스타트업
- Linux
- 해시맵
- Today
- Total
목록개발지식 (52)
마이의 개발 블로그

장고 어드민에서 엑셀 업/다운로드 기능을 손쉽게 사용할 수 있도록 해주는 import-export 모듈의 사용법이다. 1. 아래 명령어를 입력하여 모듈 설치 pip install django-import-export 2. settings.py 파일 - INSTALLED_APPS에 모듈명(import_export, 언더바 주의) 추가 INSTALLED_APPS = [ ..., "import_export", ... ] 3. 사용하고자 하는 앱의 admin.py 파일 내 모듈을 추가하고자 하는 Admin 클래스에 ImportExportMixin 추가 from django.contrib import admin from import_export.admin import ImportExportMixin ... cla..
제출된 폼의 확인 페이지를 구현하는 경우 폼의 input들을 일괄적으로 readonly 또는 disabled로 변경해야할 때가 있다. 보통은 렌더링 이후에 자바스크립트로 input값들의 disabled 속성을 true로 만드는데(input.disabled = true), 장고에서는 뷰에서 템플릿으로 폼을 생성하여 보내는 중간에 폼의 필드 속성을 변경하여 처음부터 disabled 된 채로 출력하게 하는 방법도 있어 이를 소개하고자 한다. in views for field in form.fields: form.fields[field].widget.attrs['disabled'] = True 이렇게 하면 이 폼을 전달받은 템플릿에서 폼을 렌더링 할 때 이미 모든 input이 disabled된 채로 출력되어 별..
장고 프레임워크에서는 Formset을 활용하여 여러 개의 폼을 저장하고 관리할 수 있는데, 뷰에서 Formset을 생성하여 템플릿으로 보내면, 기본적으로 비어있는 폼 한 세트가 포함된다. 매번 한 개 이상의 폼이 저장되어야 하는 페이지라면 상관없으나, 상황에 따라 폼을 렌더링하지 않도록 컨트롤 할 수도 있어야 하는데 이때 폼의 empty_permitted 속성을 활용하여 문제를 해결할 수 있다(공식 문서와 검색을 통해 발견한 내용들은 대체로 empty_permitted를 폼 자체에 선언하여 사용하는 방식이였으나, 나의 경우에는 폼에 필수 입력값들이 있어 이를 장고 validator를 통해 validate하는 과정을 무조건 거쳐야 했고 필요에 따라 빈 폼을 렌더링하기도 해야했기에 필요에 따라 빈 폼을 렌더..

배경 테스트를 위한 도메인 연결을 하던 중 HTTPS로의 전환이 필요하여 절차를 간단히 정리해보았다. 이미 Elastic Beanstalk(EB) 인스턴스 생성, 도메인 연결, SSL인증서 발급이 완료되었다는 가정 하에 내가 지정한 도메인으로 접속 시 HTTP를 HTTPS로 전환하기 위해 필요한 절차를 정리해보았다. application 로드밸런서를 기준으로 한다. 설정을 통해 만들고자 하는 전반적인 플로우 1. (HTTP 리스너를 통해) HTTP로 진입 2. (HTTP 리스너에서 설정된 규칙을 통해) HTTPS로 리디렉션 3. (HTTPS 리스너를 통해) HTTPS로 진입 4. (HTTPS 리스너에서 설정된 규칙을 통해) 리디렉션된 페이지에서 해당 인스턴스로 포워드 절차 Elastic Beanstalk..

배경 백오피스를 만들다보면 컨텐츠들의 정보를 한데 모아 대량으로 업로드해야하는 상황이 생기기도 한다. 나는 대체로 많이 사용하는 excel과 xlsx 모듈 중 xlsx 모듈을 선택하여 사용하였고, ExpressJS에서의 예시를 일부 제시하려고 한다. xlsx 모듈을 활용한 엑셀 업로드 기능 구현 순서 1. 터미널에서 npm install xlsx 입력 npm install xlsx 2. 사용하고자 하는 파일에서 require const xlsx = require('xlsx'); 3. 파일 읽어오기 (필요 시 가공 및 변환하기) //파일 첨부 여부 점검 if(!req.files || !req.files.excel_file){ res.status(400).json({ message: '엑셀 파일을 첨부해주세..