
https://console.cloud.google.com/ Google Cloud Platform 하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요. accounts.google.com 1. 위의 GCP 사이트에 회원가입하고 난 후에, 아래와 같은 페이지가 나타나면 오른쪽 상단에 "활성화" 버튼 클릭 2. 개인정보 입력 3. 자동 결제 사용 설정 확인 4. 결제 옵션 설정 (신용카드만 가능) 5. 기다리기.. 생각보다 꽤 오래걸림 ;ㅠ 6. compute Engine -> VM 인스턴스 - 프로젝트가 자동으로 생성된다. - 프로젝트가 생성되면 "만들기" 클릭 7. 프로젝트 설정 - 이름 설정 - 리전은 그냥 가까운 서울 - 머신 유형 : 고성능은..

● Order List 주문 페이지 - 자신이 주문한 제품을 확인할 수 있는 마이페이지를 만든다. 주문 Order 객체에서 로그인한 사용자에 해당하는 주문건만 가져와서 화면에 표시하면 된다. 이것 역시 로그인한 사용자만 접근할 수 있도록 method_decorator로 감싼다. order/views.py - ListView를 상속받아 주문 목록을 나타낸다. 원래 ListView에서는 'model = ' 값을 설정하여 model 값에 입력된 객체의 정보를 나열한다. 하지만 model = Order를 해버리면 로그인된 사용자 뿐만 아니라 모든 사용자에 대한 주문 정보가 나열된다. 그것을 막기 위해 model 값을 따로 설정하지 않고 get_queryset 함수를 통해서 필터링된 객체만 가져오도록 한다. - ..

● Order 주문 시스템 order/models.py from django.db import models class Order(models.Model): user = models.ForeignKey('users.Users', verbose_name = "사용자", on_delete = models.CASCADE) product = models.ForeignKey('product.Product',verbose_name = "상품", on_delete = models.CASCADE) registered_date = models.DateTimeField(auto_now_add=True, verbose_name="등록시간") quantity = models.IntegerField(verbose_name="수량..

● DRF (Django REST framework) - django REST API를 위한 프레임워크이다. - REST API 백엔드와 프론트엔드를 완전히 독립적으로 진행하기 위해서는 REST API가 가장 이상적인 방법이라고 한다. 프론트엔드가 백엔드에게 정보를 요청할 때 사용하는 것 - serializer 직렬화 DRF 에서 가장 메인이 되는 기능이 serializer 직렬화이다. API 통신에서 주고 받는 데이터 타입은 대부분 JSON이다. 하지만 python에서의 모델 객체의 데이터타입은 QuerySet 이다. 더군다나 쿼리셋은 굉장히 복잡한 구조로 이루어져있기 때문에 Query Set을 JSON 타입으로 바꾸는 것(직렬화)이 어렵다. 하지만 이러한 기능을 제공하는 것이 serializer이다...

● 상품 상세보기 product/views.py - 존재하는 모든 상품의 정보를 가져온다. 만약 모든 제품이 아니라 특정 제품만 표시하고싶다면 필터링 지정하면 된다. 어떤식으로 queryset에 저장되는지 궁금해서 출력해봤더니 queryset은 상품의 객체를 리스트 형태로 가져오는 것을 알 수 있다. - 렌더링할 product_detail.html 에 queryset을 전달하는데 'product'라는 이름으로 전달되도록 한다. 만약 context_object_name 을 따로 지정하지 않으면 default 값은 object가 된다. class ProductDetailView(DetailView): template_name = "product_detail.html" queryset = Product.obj..

● 상품 목록 (ListView ver.) product/views.py(ListView) - ListView는 조건에 맞는 여러 개의 객체를 보여준다. 보여주려는 객체(model)를 Product로 정의한다. 그러면 Product 객체의 정보를 QuerySet으로 받아와서 template_name 에 연결된 html로 넘겨준다. class ProductList(ListView): model = Product template_name = 'product_list.html' templates/product_list.html - ProductList 에서 받아온 product 객체 정보는 object_list에 저장된다. 객체리스트에는 여러 개의 product 객체 정보가 담겨있고, 그것을 하나씩 가져와서 ..

● 상품 등록 product/models.py - 상품 등록에 필요한 상품명, 가격, 설명, 재고 수량, 등록시간을 필드로 설정한다. from django.db import models class Product(models.Model): name = models.CharField(max_length = 32, verbose_name="상품명") price = models.IntegerField(verbose_name = "상품가격") description = models.TextField(verbose_name="상품설명") stock = models.IntegerField(verbose_name="재고") registered_date = models.DateTimeField(verbose_name="등..

● 로그인 users/forms.py - 필드를 설정하고 clean을 통해 유효성을 검사한다는 점에서 RegisterForm과 유사한 방식을 갖는다. 하지만, 로그인 폼에서는 존재하는 이메일인지 확인하는 try 와 존재하지 않는 경우의 예외 처리(Users.DoesNotExist) 코드, check_password 를 사용하여 비밀번호를 확인한다. class LoginForm(forms.Form): email = forms.EmailField( error_messages={'required':'이메일을 입력하세요'}, max_length=64, label = "이메일" ) password = forms.CharField( error_messages = {'required' : "비밀번호를 입력하세요"},..
- Total
- Today
- Yesterday
- django pythoneverywhere
- Django
- ModelForm Form 차이
- iOS 화면 안나옴
- pythonanywhere배포
- 장고 태그달기
- Realtime Database
- iOS 검은 화면
- django tag
- iOS 데이터베이스
- Firebase 데이터베이스 추천
- UITableViewController Not Working
- django 태그
- iOS UITableView 출력안됨
- django clean
- django 개발일지
- django 로그인접근
- python 웹 배포
- CellForRowAt 호출안됨
- pythonanywhere배포방법
- 장고 게시판
- 까만 화면
- CellForRowAt Not Called
- 데이터베이스 추천
- cleaned_data
- 테이블출력안됨
- 실시간 데이터베이스
- 웹 배포
- django 게시판
- 알파벳 카운팅
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |