전체 글 260

1-2. 머신러닝의 개념과 용어

목차 1. 머신러닝이란? 2. learning이란? supervised (지도학습) unsupervised (비지도학습) 3. regression(회귀)? classification(분류)? 해당 게시글은 다음의 영상을 참고했습니다. 제가 이해한 부분에 배경지식을 담았습니다. [출처] : www.youtube.com/watch?v=qPMeuL2LIqY [출처] : opentutorials.org/course/4548 1. 머신러닝이란? 결정 = 비교 + 선택 수의 발견 이후에는 발전하여 인류에서 일어나는 것들을 수로 표현하였고, 통계와 컴퓨터의 발달로 수많은 결정을 할 수 있게 되었고, 이제 결정을 컴퓨터에게 맡기려한다. 기계가 스스로 판단하여 비교하고 결정하도록 가르치는 것이 기계학습(Machine l..

1-1. 개요

시작하는 단계이기에 이번주차는 간략하게 시작을 하게 되었다. 개요 누구에게 적합한가? 목표 스케줄 해당 게시글은 다음의 영상을 참고했습니다. 제가 이해한 부분에 배경지식을 담았습니다. [출처] : www.youtube.com/watch?v=BS6O0zOGX4E 개요 (1) 누구에게 적합한가?? 다음의 영상은 기본 ML의 기초지식을 배우고 싶지만 수학과 컴퓨터의 배경지식이 없는 사람도 시작할 수 있다. 그리고 Computer Science에서 중요한 부분을 차지하는 (1) 객체지향프로그래밍의 추상화: 불필요한 정보는 숨기고 중요한 정보만을 표현함으로써 공통의 속성이나 기능을 묶어 이름을 붙이는 것 (2) Interface: 그것을 편하게 사용할 수 있게끔 제공하는 것이다. 예를 들면 우리는 TV를 시청할 ..

0주차. 시작하는 글

BGM(부산 개발자들의 모임)에서 주최하는 머신러닝/딥러닝 스터디, 실습 및 프로젝트를 시작하게 되어 공부의 효율을 높이기 위해 이렇게 블로그에 작성하게 되었다. 해당 프로젝트의 계획은 10주차로 구성된다. 해당 강의에서 빠르게 가져갈 이론들을 챙겨서 실습해보고 재밌는 프로젝트를 수행하는 것이 목적이다. 평소에 해당 분야에 관심도 많고 리드님이 대단한 분이셔서 기대가 많이 기대가 된다ㅎㅎ hunkim.github.io/ml/ 모두를 위한 머신러닝/딥러닝 강의 hunkim.github.io www.opentutorials.org/module/4966/28965 오리엔테이션 - Tensorflow 101 수업소개 딥러닝이라는 이름으로 유명해진 인공신경망과 이를 구현하는 것을 도와주는 도구 텐서플로우 라이브러..

13. Django order app 주문정보 조회하기

이제 주문정보 조회하는 것을 list로 만들어 보겠다. 즉, ListView를 사용할 것이다. 그 말은 페이지를 만든다는 의미이고 그로 인해 평소에 하던 순서를 반복하겠다. 목차 1. templates ( order.html ) 2. views.py ( class OrderList ) 3. urls.py ( "order/" ) ★ 4. 문제점 발생!! --> 해결 : QuerySet ★ 5. 결과확인 1. templates ( order.html ) 모델을 참고하여 템플릿에서 표시할 정보들을 수정할 것이다. head 에는 상품명, 수량, 주문날짜를 표시하고 body에는 DB에 저장된 순서(주문순서), 상품명, 수량, 등록날짜만 표시하도록 하자. 2. views.py ( class OrderList ) 이..

12. Django order app 상품 주문하기 (2)

지난 수업에 이어 상품주문하기 2편이다!!! 이번엔 좀 어렵다잉!! 가즈아!! 목차 : 1. request.session 2. db.transaction 3. 결과 확인 1. request.session (1) 이제 해당 주문으로 인해 수량이 감소하는 것을 DB에 저장하도록 하는 코드를 작성할 것이다 . # 이제 사용자 정보를 들고와야한다. # session을 가져오려면 form 안에서 request.session에 접근할 수 있어야 하는데 # 현재는 접근할 수 없다. session에 접근할 수 있도록 form을 변경할 것이다. 여기서 DB에 데이터를 저장하는 save()의 경우 어느 파일에서 하든 상관없지만, FormView의 경우 값을 form으로 입력받으면, 그 값을 DB에 넣는 작업또한, 해당 f..

11. Django order app 상품 주문하기 (1)

이번 파트는 많은 내용을 담고 있기에 2편으로 나누어 진행하였다. 지금까지 만든 shopuser(유저), product(물건) app을 구현하였다. 이제 해당 유저가 이 쇼핑몰에서 물건을 사게 되는 경우 이루어지는 기능을 구현한다. 이번엔 기능 별로 목차를 나눌 것이다. 파일을 여기저기 왔다갔다 할꺼니깐 잘따라와!! 가즈아!!!!!!!!!!!!!!!!!!!!!!!!! 목차 : 1. forms.py 2. views.py 3. FormView( order/views.py ) , urls.py 4. template 수정 ( product_detail.html ) 5. 문제점 1. forms.py 주문하기의 경우 주문하는 페이지를 별도로 만들지 말고, 상품 상세페이지(product_detail.html)에서 수..

10. Django product app 상품 상세보기

상품 상세보기 또한 기본적으로 제공하는 View 중에서 DetailView를 사용해서 구현해 볼 것이다!! ( 지금까지 배운것 2가지 : FormView, ListView ) from django.views.generic import ListView, DetailView from django.views.generic.edit import FormView 똑같이 template_name 지정하고, 적절한 형식만 맞추면 된다. 가보자잉!!!! 1. views.py 2. product_detail.html 3. urls.py 4. primary key 5. bootstrap 6. 링크 연결 1. views.py 여기서 달라지는 것은 queryset 이라는 변수에 특정 값을 넣어줘야 한다.!!!!!!!!!!!!..

9. Django product app 상품등록 만들기

이제 상품을 등록하는 기능을 만들어보자 이전 상품목록을 보여주는 기능은 DB에 저장된 데이터를 List를 보여주는 것이기에 등록할 상품을 구조과 형식에 맞게 DB에 저장하도록 페이지와 코드를 작성해보자 등록은 회원가입과 유사하기에 register_product.html 과 forms.py를 생성한다. 다음과 같이 큰 틀로 나눌 수 있다. 1. forms.py 2. register_product.html 3. views.py, urls.py 4. 결과확인 5. summernote 과 깨알지식들 및 해당 결과 확인 1. forms.py forms.py 의 경우 지금까지 같이 해왔다면 받고 싶은 데이터를 form으로 받는 것이기에 product에 해당하는 데이터는 models.py에 정의되어 있다. 그 구조로..

8. Django product app 상품목록(list) 만들기

이제 상품에 대한 app을 만져보자 1. model 이전에 완성한 product의 model을 보면 다음과 같다. 2. view 우선 product의 경우 list를 사용하기 ListView를 이용한다. (user에서는 FormView를 사용햇다.) 여기서 이해를 돕기위해 복습하자면, 우리는 view를 만들때 하나씩 함수로 구현이 가능하다. 하지만 django에서는 기본적으로 내부적으로 간단하게 이용 가능한 몇가지의 View들이 존재하고 우리는 views.py에서 해당 class를 사용할 특정View를 상속받은 뒤, 프레임워크의 특징처럼 구조에 맞게 몇가지 설정만 하면 된다. ListView의 경우 어떤 모델의 리스트를 보여줄 것인지 모델을 지정해주어야 한다. (모델만 지정해주면 끝이다.) 3. url ..

7. Django 로그인 view 구성

로그인의 경우 회원가입과 비슷한 구조를 갖는다. 그래서 설명이 빈약할 수 있다ㅎㅎ 다른점이 있다면 ★session★ 이다. 밑에서 자세히 설명하겠지만 맛보기로 설명하자면, 로그인이 되었을 때와 로그인이 되지 않은 상태에서는 서로 다른 권한을 갖고 있고 현재 페이지도 그 권한에 따라 다를 수 있는 것이다. 그렇다면 로그인이 되었다면 뭔가를 더 가졌다는 말이고, 이를 어떻게 설정하는지도 보자!! 1. templates ( 'login.html' ) 해당 templates를 register.html에서 로그인으로 몇 가지 text만 수정하면 된다. 기본적으로 form형태를 유지하도록 완성되어있기에 궁금한점은 댓글 적어 주세요~ 2. forms (LoginForm) 비밀번호 확인에 해당하는 re_password..

2. 쿠키와 세션 (cookie and session)

우리가 웹페이지에 접근을 할 때 로그인이 되어 있을 때와 로그인이 되어있지 않을 때는 다양한 것들이 다르게 반응한다. 권한도 다르고 해당 페이지도 다르게 나타날 수 있다. 그렇다면 로그인 후에는 웹페이지를 돌아 다닐때마다 로그인을 했다는 표시인 열쇠?키? 같은 것을 들고 다니는 듯하다. 그것이 아니라면 페이지마다 로그인을 해야겠지. 그럼 쿠키와 세션은 무엇을 뜻하는 걸까? 좀 더 파헤쳐 보자!!!! 1. 전체 동작원리 (쿠키이용, 세션이용) 자! 우리는 지금 웹페이지에서 어떻게 동작하는지 보자! 내가 네이버에 들어가기 위해 naver.com을 검색하면 naver의 서버에 내가 요청을 하게 된다. 그럼 서버에서는 해당페이지를 나한테 응답하고 그것을 화면에 띄워주는 것이 큰 틀이다. 웹페이지가 동작을 할 때..

Server/Django issue 2020.09.23

6. Django 회원가입 view 구성

bootstrap을 이용하여 기본적인 UI를 구현하여 django의 흐름을 더욱 이해하도록 회원가입을 만들려고 한다. getbootstrap.com/docs/4.3/getting-started/introduction Introduction Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with BootstrapCDN and a template starter page. getbootstrap.com 해당 bootstrap에서 css, js에 해당하는 부분을 복사하여 head부분에 붙여넣기 해준다. 이렇게 되면 bootstrap을 사용할 수 있는 구조는 완성이 되..

5. Django view 구성 (Class-based generic views)

views.py의 경우 특정 url에 접근할 때 특정 함수로 호출되도록 하는 경우를 넘어서 Class 기반으로 view를 구성해보자!!!! Class를 이용하게 되면 inheritance(상속)을 이용할 수 있게 되고, 부모클래스의 함수들을 활용도가 매우 높다. 우리가 직접 클래스를 만드는 것도 가능하지만!! 우선 django 안에 만들어진 몇 가지의 view를 살펴보자 개발자면 갬성있게 공식홈페이지 들어 가줘야지!!!!! docs.djangoproject.com/en/3.1/ Django documentation | Django documentation | Django Django The web framework for perfectionists with deadlines. Overview Downlo..

4. Django admin 구성 (관리자 페이지)

admin 구성 (관리자 페이지) Django admin 이 무엇인지 보고 우리가 만든 모델을 적용해서 사용해보자. 각 app에 있는 admin.py를 수정해서 등록을 해줘야한다. 기본적으로 settings.py에 admin은 설정이 되어있다. 프로젝트 생성 시 자동으로 생성되는 urls.py에도 기본적으로 admin은 들어가 있다. 의미를 설명하자면 admin안에는 여러가지 url들이 정의가 되어있고, 그것들을 프로젝트 안에서 admin 하위 ( admin/{여기} ) 로 지정하는 것이다. (관리자 페이지에서도 여러가지 url들을 사용하고, 또 그것들이 admin안에 정의가 되어있다.) 그렇기에 우리가 주소를 입력할 때, admin 하위에 들어가는 주소들은 admin.site.urls 안에 정의된 ur..

3. Django model 구성 (데이터의 정의)

model 구성 (데이터의 정의) Users를 관리하기 위해 필요한 데이터들을 DB(데이터베이스)에 넣겠다는 의미이다. verbose_name : 지칭하는 닉네임이라고 보면 된다. CharField : 최대길이를 지정해 주어야 한다. TextField, EmailField : CharField와 다르게 max_length(최대길이)를 지정할 필요 없다. DateTimeField : auto_now_add를 통해 현재 시간으로 자동 추가가 가능하다 def __str__(self) : 해당 클래스의 객체는 self.email로 반환됨을 의미한다. class Meta : 해당 데이터들이 묶여있는 table과 admin 페이지에 있는 닉네임을 지정한 것이다. _plural : 복수형을 의미하며, 사실 데이터가 ..

2. Django 설치 및 환경 구축

yeongwoo-cho.tistory.com/5 1. 나 이제 윈도우에서 우분투로 개발할래(WSL과 VScode) 웹 애플리케이션을 빌드하는 경우 Python을 WSL에 설치하는 것이 좋다. Python 웹 개발에 대한 많은 자습서와 지침은 Linux 사용자를 위해 작성되었으며, Linux 기반 패키징 및 설치 도구를 사용한다. 대 yeongwoo-cho.tistory.com 나는 위에 방법으로 OS Windows에서 VScode의 Terminal을 Ubuntu로 사용하고 가상 환경까지 구축하였다. 우선 장고를 설치해야지 $ pip3 install django django를 설치하게 되면 django-admin 이라는 명령어를 실행할 수 있게 되고, 이 명령어를 통해서 project와 app도 만들게 된..

1. Structure of django framework

핵심 : model 계층, template 계층, view 계층, (MVC 계층, MTV계층) 핵심이 되는 아래의 3가지를 쉽게 사용하도록 제공해준다. 모델 계층 : 데이터를 정의한다! 템플릿 계층 : 동작된 결과로 무엇을 보여줄 것인가! 뷰 계층 : 데이터를 갖고 어떤 동작을 한다! model 계층 : 데이터 베이스와 연동하는 과정이며, 기본적으로 데이터 베이스에 데이터를 R/W 할 때는 SQL이라는 문법을 사용해야 한다. but 장고에서는 모델 계층의 python 클래스로 만들고 그것을 연결만 해주면 함수만 사용해서 자동으로 SQL을 생성할 수 있다. 생성하는 SQL을 볼 필요도 없고, 데이터를 저장하고 싶으면 save함수만 호출하면 저장된다. 이런 것들을 제공하는 계층이 모델 계층이다. 중요한 것은..

0. Django Project 1 - shopping mall (Introduce)

● 장고를 통한 쇼핑몰 일부 만들기 ●회원관리 ●상품관리 ●주문관리 ● 클래스를 활용한 뷰 생성 ● 함수 vs 클래스 => 뷰의 재사용 함수로 구현하면 페이지마다 전부 다 구현해야 한다. But, 클래스로 구현하면 상속받을 수도 있고 유리한 점이 많다. 이미 만들어진 클래스들도 꽤 있다. ● 데코레이터 => 기능의 재사용 중복 사용 가능성이 있는 코드들을 한 곳에 놔두고 재사용 할 수 있게 한다. 예를 들어, 상품등록은 관리자만 사용가능 해야하기에 페이지 A, B, C 중에서 A, B는 관리자만 접근가능하도록 권한 설정 같은 것을 해야한다. 이러한 설정은 모든 페이지마다 만드는 것은 비효율 적이기에 데코레이터를 통해 기능 또한 재사용 하도록 하는 것을 배워보자 ● DRF로 RESTful API도 개발 최..

1. 나 이제 윈도우에서 우분투로 개발할래(WSL과 VScode)

웹 애플리케이션을 빌드하는 경우 Python을 WSL에 설치하는 것이 좋다. Python 웹 개발에 대한 많은 자습서와 지침은 Linux 사용자를 위해 작성되었으며, Linux 기반 패키징 및 설치 도구를 사용한다. 대부분의 웹앱은 Linux에도 배포되므로 개발 환경과 프로덕션 환경 간에 일관성을 유지할 수 있다. 하지만 현재 나의 OS는 Windows이다. Linux를 사용하게 되면 VMware와 같은 virtual machine을 사용하게 되고 개인적으로 사용하는데 제한적인 부분이 많아서 불편했다. 역시 맥북사는게 답이구만... 그래도 아직 멀쩡한 노트북이니깐 이를 최대한 활용하기 위해 Windows에서 ubuntu를 사용하고 VScode와 연동할 수 있는 WSL을 인용하기로 마음먹었다. 여기서 내가..

Server/Django issue 2020.09.14

0. Django issue에는 어떤 것들이 있을까?

이전에 가볍게 Django에 대해 공부해봤기 때문에 자신감 있게 좀 더 실전적인 공부를 하려한다. 수업에 대한 것도 기록하겠지만, 그것보다는 개발을 하는데 있어서 "왜 이렇게 되는거지?" "왜 안되는 거지?" 이런 질문을 스스로 던져서 이러한 Issue를 해결하는 것을 중점으로 공부하려 한다. 내 수준에서도 뻔하고 당연한 것은 되도록 기술하지 않으려 한다. 사실 방금 환경설정과 개발 setting 하는데 4시간 동안 해매고 구글링하면서 문제를 해결하는 과정에서 기똥차게 이해를 해버려서 이 게시판을 만들기로 결정하였다ㅎㅎㅎ 아 참고로 공부 시작은 fastcampus의 파이썬 웹 개발 강의를 참고하면서 이루어진다!! But, 수업에만 억매이지 않고 만들고 싶은데로, 설정하고 싶은대로 할 것이다. 더 나아가 ..

Server/Django issue 2020.09.14