본문 바로가기

728x90

멀티캠퍼스 프로젝트형 AI 서비스 개발 5회차

2/17 목 목요일! 리스트로 돌아가기, 수정, 삭제, 좋아요 버튼을 만들고 각각의 기능을 여태 배운 것을 응용해 구현해야 하는데 어렵다아아아아! 리스트로 돌아가기 말고는 감이 안 잡혀.. 1. HTML 엘리먼트를 이용해서 사용자 입력 양식(입력 Form)을 만드는 것이 아니라, Django가 제공하는 Model Form(class)를 이용함 bbs App 디렉터리 안에 forms.py 생성하고 Django에서 forms 모듈, bbs.models에서 class를 불러온 후 form에 대한 class 정의함 ↓forms.py↓ from django import forms from bbs.models import Board class BoardForm(forms.ModelForm): class Meta: model =.. 더보기
2/16 수 수요일! 오늘은 Django로 게시판을 만든다. 1. 루트 디텍터리 바로 밑에 템플릿을 모아 저장할 디텍터리를 만들고, settings.py 파일에서 os 모듈(경로와 파일명을 합침)을 import 한 후에 템플릿 디텍터리를 연결함 os.path.join(경로, '파일명') → C:/python-django/LectureSampleProject_0216/template 파일들 2. Static files(CSS, JS, images)은 client의 request URL에서 나오는 형태이므로, 루트 디렉터리 바로 밑에 static 디렉터리를 만들고 settings.py 파일에서 static 디텍터리를 연결함 루트 디렉터리 바로 밑에 media 디렉터리를 만들고 Media 파일(client가 server에.. 더보기
2/15 화 화요일! PyCharm으로 지난번에 했던 Project(MyFirstWeb_0215) 생성, Django 설치 및 MySQL 연동을 똑같이 진행했다. 1. 오늘은 templates 폴더 안에 추가로 polls 폴더를 만들고 index.html 파일을 생성해줌 2. HttpResponse 안에 질문을 클릭하면 question.id가 연결되도록 link 속성 지정하기 3. urls.py(polls URLConf) 파일에서 question_id에 대한 URLConf의 경로를 설정해야 함 4. polls App에 해당되는 URL로 진입(request)하면 view로 detail함수가 호출되므로 이를 정의해야 함 5. templates/polls 폴더 안에 detail라는 HTML 파일을 만들어줌 6. polls.. 더보기
2/14 월 월요일! 🐱‍🐉 지난 금요일에 이어 PyCharm과 MySQL을 이용해 Django를 배운다! PyCharm으로 지난번에 했던 Project(MyFirstWeb_0214) 생성, Django 설치 및 MySQL 연동을 똑같이 진행했다. 1. MySQL로 DB Table을 만드는 것이 아닌, PyCharm에서 Python 모듈 중 models를 불러와서 class를 만듦 polls 폴더의 models.py 파일 안에 class로 DB Table 명세를 설정함. model class를 만들 때는 반드시 model.Model을 상속해야 함. PK(Primary Key)가 자동으로 하나 설정됨 from django.db import models class Question(models.Model): # id = .. 더보기
2/11 금 😎 이야아아아 불금!! 😎 프런트엔드 끝내고, 백엔드로 넘어갑니다. Python으로 만들어진 Web Application Framework, Django! WSGI(Web Server Gateway Interface) : Web서버가 받은 호출을 Python 애플리케이션에게 전달하고 응답받기 위한 호출 조약(Calling Convention) Private Physical Server 위의 녹색 선으로 그려진 모든 것들을 합쳐서 WAS(Web Application Server)라고 부름 Application을 담을 Web Server라고 생각하면 이해가 쉬움 그리고 파란색으로 칠해진 WSGI module과 WSGI Process를 합쳐서 WSGI middleware라고 부름 하나로 구성된 것이 아니라 일.. 더보기
2/10 목 목요일~~ 지난 수업 때 하던 일별 박스오피스 API 서비스를 더 배운다. AJAX의 async: true 비동기(데이터 수신 기다리지 않고 바로 다른 작업 실행. default) 혹은 동기(false. 순차적) 호출을 지정함 웹디자인까지 신경 쓸 여유는 없기 때문에, Bootstrap Examples에서 페이스 소스(HTML)와 css 파일을 WebStorm으로 가져와서 활용한다! HTML에서 불필요한 라인들 지우고 jQuery CND, jQuery 파일, CSS 파일 연동시킴 input type="date"로 달력을 넣어 일별 박스오피스 순위를 조회할 수 있게 넣고, Delegation Model(JS Event 처리 방식)로 Event가 처리될 수 있도록 'onclick' Event Attribut.. 더보기
2/9 수 GitHub 특강 둘째 날! 오전에는 경향 파악과 rebase를 배우고 실습 문제를 풀며 응용했고, 오후에는 팀 프로젝트(3인 1조)로 fork, clone, commit, push, pull-request, merge 일련의 과정을 협업했다! 각자 이해도와 환경설정이 다르다 보니 오류, 오타, 경로 잡는데만 시간이 엄청 걸렸다.. 전체적인 그림을 이해해야 대응하고, 응용도 할 수 있다는 걸 느꼈다. 다들 어려워한다. 기죽지 말자! rewind : commit을 과거 시점으로 되감기. 원복한 내용 이후의 최근 것은 .git에 임시 저장됨. rewind 구간은 중복 생성 가능 rebase 한 내용과 rewind 한 내용에 동일한 부분 commit이 있다면 충돌(conflict)이 일어날 수 있음 cd /w.. 더보기
2/8 화 오늘은 화, 수요일 이틀에 걸쳐 송태웅 강사님의 GitHub 특강이 있는 날이다~ GitHub·goorm 회원 가입하고 goorm IDE에 리눅스(컨테이너) 개발환경 추가. SW stack은 Pytorch 1. fork 프로젝트 복사 2. clone 소스코드 다운로드 3. 프로젝트 분석·경향 파악 4. commit 코드 수정 작업 5. push 작업 commit 업로드 (fork 프로젝트 O / 팀 프로젝트 X) 6. Pull-Request 나의 작업(commit) 제출 commit : commit message(코멘트. 수정한 이유) + diff(소스 파일의 변화분) Merge commit : 병합 커밋. 수정 내역(diff)은 없음. 빈 깡통 커밋 pwd : print working directory.. 더보기

728x90