일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- bcrypt
- 실행 컨텍스트
- nodeJS
- 노드
- wecode
- docker
- 장고초기세팅
- TypeError: this.boardRepository.createBoard is not a function
- pm2
- javascript
- on_delete
- 스코프
- rebase
- CORS
- node
- typescript
- JWT
- 호이스팅
- 프로미스
- Jest
- status code
- async/await
- westagram
- 자바스크립트
- django westagram
- OSI7계층
- Django
- 트랜잭션
- manytomanyfield
- crud2
- Today
- Total
목록전체 글 (190)
될때까지
* DecimalField도 기본값 설정 가능 point = models.DecimalField(max_digits = 10, decimal_places = 2, default=Decimal('100000.00')) * 카카오ID는 BigIntegerField - 카카오 공식문서에서 id는 long type으로 보내주기 때문에 BigIntegerField kakao_id = models.BigIntegerField(unique=True) * DB삭제하고 다시 넣기 외래키 해제 set foreign_key_checks = 0; 외래키 활성화 set foreign_key_checks = 1; 테이블 ID까지 삭제(ID값 초기화) truncate 테이블명; 테이블 데이터만 삭제(ID값 연결) delete fr..
어제보다 복잡해진 우리의 ERD . 3명이서 작업하기에는 시간이 많이 남을 것 같다고 하셔서 호스트 기능과 리뷰를 추가했다. 모델링작업은 초기에 확장성까지 고려해서 만드는 게 좋다는 걸 1차에서 뼈저리게 느꼈기에..!!! 해당 ERD를 베이스로 모델링 작업을 진행했다. 이미 다 알고있는 개념이다 싶었는데 알고있는 게 아닌 '익숙'해진 것들이였다ㅜㅜ 그래서 진행하면서 몰랐던, 혹은 부족했던 개념들을 포스팅으로 정리해보고 넘어가자!! auto_now=True & auto_now_add=True updated_at = models.DateTimeField(auto_now = True) auto_now=True는 현재 날짜 created_at = models.DateTimeField(auto_now_add = ..
1주차 프로젝트가 끝나고 바로 2주차 프로젝트가 시작이 됐다 ^___^ 쉴틈없이 몰아붙이는 위코드 💪 2차 프로젝트는 에어비앤비 사이트를 모티브로 삼았다. 2차 프로젝트는 1차때보다 많이 버벅거리고 싶지 않은데 마음처럼 될란가 모르겠다.. 할 수 있다 할수있다 멘탈을 다잡고 있다!! 못하니까 배우려고 온거잖아 힘내자 할수있어 이번에도 파이팅!! 에어비앤비를 모티브로한 WnB의 백엔드 기준 필수구현사항과 추가구현사항은 아래와 같이 정했다. * 필수 회원가입 로그인 로그인 데코레이터 소셜 로그인(카카오) 상품 리스트 상품 상세 페이지 상품 필터 예약 예약 상세 페이지 * 추가 알림 결제 마이페이지 예약기능 : 유연한 일정 찜하기(위시리스트) 리뷰 개인정보변경 비밀번호 변경 백엔드 이번 팀은 위코드 첫 날부터..
1. AWS 계정 생성하기 2. Application 배포 EC2 서버 생성하기(가상 서버) 지역은 서울 선택 ubuntu 18.04 64bit 선택 t2.micro 선택 보안그룹 설정 키 페어 생성 및 다운로드 인스턴스 시작 .pem파일 권한 변경하기 .pem파일 있는 폴더로 이동하기 ls 명령어 후 .pem파일 여부 확인하기 chmod 400 [pem파일이름.pem] ssh -i [pem파일이름.pem] ubuntu@공인ip(ec2 서버의 IP4 퍼블릭IP) RDS 생성하기(데이터베이스) 파라미터 그룹 설정 데이터 베이스 생성하기 전 파라미터 그룹 설정 파라미터 그룹 패밀리 : mysql5.7 파라미터 그룹 편집 : character_set 검색 후 utf8mb4 사용 : collat 검색 후 col..
MySQL 콘솔 로그인 # 로컬 mysql -u root -p # 호스트 mysql -h 호스트주소 -u root -p 데이터베이스 생성 create database 데이터베이스이름 character set utf8mb4 collate utf8mb4_general_ci; 데이터베이스 리스트 보기 show databases; 데이터베이스 선택하기 use 데이터베이스이름; 데이터 삭제 delete from 테이블이름 where 조건 데이터베이스 덤프 내보내기 mysqldump -u root -p 데이터베이스이름 > 생성할이름.sql 덤프 밀어넣기 mysql -h 호스트주소 -u root -p 데이터베이스이름 < 파일명.sql
프론트 깃허브 : 김수정, 이강철, 손민지 백엔드 깃허브 : 성바울, 전은형 자라홈 시연영상 💗 Django로 프로젝트 하면서 느낀 점 - 올해 초 타학원에서 Flask를 써서 프로젝트를 진행했던 경험이 있다. 그때는 강사님이 프론트를, 수강생들이 백엔드를 맡아서 진행했다. Flask는 최소한의 기능만 내장되어있어서 설치하는 작업이 많았는데 Django는 이미 많은 기능들이 내포되어있어서 그대로 사용만 하면 되는 점이 달랐다. Django는 참 편리하다 느꼈다. 💗 혼자할 때와 팀으로 진행할 때 다른 점 - 혼자 포스트맨이나 httpie로 테스트할 때는 예상했던 응답이 잘 왔다. 하지만 프론트와 협업시에는 서로 작성했던 키값이 달라서 시간을 좀 잡아먹었다. 키값뿐만 아니라 원하는 데이터를 어떻게 주고,..
드디어 완성한 상품 리스트뷰.. 필터와 정렬이 이렇게 어려운 지 몰랐다. API하나 만드는데 시간이 이렇게 오래 걸릴 일인가 현타도 많이왔다. 나는 앞으로 나아가질 못하고 있는데 이미 다른 팀원들은 추가기능까지 도전하고 있고.. ㅜ_ㅜ 누구나 꽃피는 시기는 달라 어제의 나와 비교하자 파이팅!!! 멘탈을 다잡고 이제 완성된 코드를 리팩토링 해보자. class ProductListView(View): def get(self, request): sort_by = request.GET.get('sort_by') size = request.GET.get('size') min_price = request.GET.get('min_price', 0) max_price = request.GET.get('max_price..
이번에는 자라홈의 가격 필터링을 구현했다. size1 = request.GET.get('size') : size에 대한 벨류값을 가져온다. size_list = request.GET.getlist('size') : size에 대한 벨류값을 리스트로 저장한다. /products?size=s&size=m 로 들어오는 경우 size_list에는 ['s', 'm']이 담긴다. /products?size=s,m 로 들어오는 경우에는 size1 = request.GET.get('size').split(',')을 사용해 리스트로 담아야한다. 프론트엔드로부터 min_price와 max_price를 받는다. min_price가 있는 경우 Q를 사용하여(ORM에서 and나 or을 구현할 수 있는 객체) 조건을 더해준다. ..
먼저 사이즈에 대한 필터를 구현해보자. size필터에 대한 값 역시 클라이언트로 부터 받아와야한다. 우리팀은 중복없이 하기로 했기 때문에 getlist가 아닌 get을 사용했다. from django.http import JsonResponse from django.views import View from django.db.models import Min, Q from products.models import Product, SubCategory class ProductListView(View): def get(self, request): sort_by = request.GET.get('sort_by') size = request.GET.get('size') products = Product.object..
어제까지 작성했던 코드는 아래와 같다. class ProductListView(View): def get(self, request): sort_condition = request.GET.get('sort-by') products = Product.objects.all() result = [{ 'id' : product.id, 'name' : product.name, 'image_url': product.image_url, 'prices' : [int(p.price) for p in product.productoption_set.filter(product_id = product.id)] } for product in products] if sort_condition == 'price': result = s..