분류 전체보기 202

[Flask]TypeError: get() missing 1 required positional argument 해결 방법

에러 메세지 url로 products 값이 잘만 들어왔구만 왜 TypeError가 뜨는지 환장할 노릇이다. 오류가 발생한 Flask 코드 장바구니 페이지에 있는 user_id 값과 products 리스트를 orders.get 라우터로 보낸다. orders.get 라우터는 이 데이터를 받아서 사용한다. 오류를 해결한 Flask 코드 라우팅 경로에 products를 추가해줘야 했다... get 함수 파라미터로 products를 추가해주면 될 줄 알았는데 기본적인걸 잊고있었다ㅠ 결론 라우팅 경로에도 변수 정의를 해줘야한다.

[에티버스러닝]RECA 2기 11주차: 팀 프로젝트 중간 후기(쇼핑몰 웹 제작)

[에티버스러닝 k-digital training 2023.5.2~5.4] 이번 주 부터 다음 주 까지는 프로젝트에 집중하는 시간을 가졌다. 오전에는 프로젝트에 적용시킬 수 있는 html과 css 이론 수업을 하고 오후에는 팀원들과 함께 프로젝트를 진행했다. 프로젝트 진행중에는 진행 상황 구현 기능 새롭게 배운 내용 아쉬운 점 위주로 정리할 계획이다. 1. 진행 상황 그리고 github branch rule 문제로 conflict 수정 후 push가 안된다거나, 다른 팀원들 작업물을 pull 받고 push를 하니 작업이 꼬인다거나, gitignore가 적용이 안된다거나하는 사소한 문제가 있었지만 다행히 초반에 다 해결이 됐다(주말에 시간을 잠깐 반납했다...). 나는 장비구니 쪽을 맡고있는데, 저번주에 p..

[에티버스러닝]RECA 2기 10주차: 데이터베이스(MySQL)

[에티버스러닝 k-digital training 2023.4.24.~4.27] 저번 주로 Python 수업을 마치고, 이번 주 부터는 SQL문을 사용해서 MySQL Workbench를 조작하는 방법을 배웠다. 최종 모델링을 바탕으로 작업했다. 데이터는 네이버 API를 통해서 받아올까 하다가 token 오류가 발생해서 그냥 네이버쇼핑 사이트를 크롤링해서 받아왔다. 이렇게 모든 자료를 csv파일로 만들고 MySQL Workbench를 통해 데이터를 insert하면서 에러가 많이 발생했다. 주로 datatype을 잘못 지정해서 고생을 많이 했다. 혹시라도 문제가 생기는 일을 방지하기 위해 노션에 백업 자료를 모아놨다. 4월 27일 목요일에 작업을 마치고 이 데이터를 바탕으로 슬슬 API 개발을 해볼까 싶어서 ..

Flask에 MySQL 데이터 연동 ① DB 연동 순서(pymysql)

이전 포스팅까지 진행하셨다면 URL경로 별로 페이지를 여는 방법은 아실겁니다. 이 페이지에 MySQL 데이터를 출력해주는 작업을 해보겠습니다. 일단 MySQL 연동을 위한 기본적인 틀부터 봅시다. # python 파일 # 모듈 import import pymysql # MySQL 데이터베이스 연결 db = pymysql.connect(host='127.0.0.1', user='root', password='1234', db='shop', charset='utf8') # 데이터에 접근 cursor = db.cursor() # SQL query 작성 sql = "select * from users" # SQL query 실행 cursor.execute(sql) # db 데이터 가져오기 cursor.fetch..

Flask 개발 기초 ③ API 라우팅 함수 관리(블루프린트)

[점프 투 플라스크]를 참고해서 작성한 글입니다. https://wikidocs.net/81510 이번 포스팅은 views 디렉토리에 대해 알아보겠습니다. 1. 블루프린트? 블루프린트(blueprint)는 Flask에서 URL과 함수의 매핑을 관리하기 위해 사용하는 도구입니다. 블루프린트 이용하면 라우팅 함수를 체계적으로 관리할 수 있습니다. 2. 블루프린트 생성 현재 작업 상태부터 확인해볼까요. 이 상태에서 pybo 디렉토리 안에 views 디렉토리를 만들고 main_views.py 파일을 만듭니다. main_views.py 에는 '/hello'와 '/'경로에 대한 매핑 코드를 작성해봅시다. # c:\myproject\shop\pybo\views\main_views.py from flask import..

Flask 개발 기초 ② 애플리케이션 팩토리(application factory)

[점프 투 플라스크]를 참고해서 작성한 글입니다. https://wikidocs.net/81504 이번 포스팅은 __init__.py 파일에 대해 알아보겠습니다. 1. pybo.py를 __init__.py 파일로 변경 이전 포스팅에서 pybo.py 파일을 만들어서 flask run으로 동작시켜 봤습니다. 이 때 만든 pybo.py 파일을 pybo 디렉토리를 만들어서 그 안에 넣어줄 겁니다. 2. 애플리케이션 팩토리(application factory) 그리고 파일 코드를 create_app 함수를 선언하는 방식으로 수정합니다. # c:\myproject\shop\pybo\__init__.py from flask import Flask def create_app(): app = Flask(__name__)..

협업의 첫 번째 단계 ④ git branch 네이밍 규칙

git은 하나의 프로젝트를 기능과 목적에 따라 분산 작업을 할 수 있습니다. 이를 branch를 나눠서 작업을 한다고 하는데요. 위 사진을 보면 Main, Hotfix, Release 등 다양한 branch 이름이 있습니다. Main은 레포지토리를 생성하면 기본적으로 만들어지는 branch이니 익숙하겠지만, 나머지는 생소할 겁니다. 종류 설명 예 Main 메인 브랜치 main (그대로 사용하는게 일반적) Hotfix 디버깅 브랜치 hotfix-1.1.4 1.1 버전 디버깅 Release 배포하기 위한 브랜치 release-1.1 1.1 버전 Develop 배포 전 개발 브랜치 develop (그대로 사용하는게 일반적) Feature 기능 개발 브랜치 feature/signin 로그인 기능 브랜치 예시를 ..

협업의 첫 번째 단계 ③ git commit 컨벤션 이란?

이전 포스팅에 이어서 작성한 글입니다. https://minha0220.tistory.com/65 이전 포스팅에서 github에 commit 하는 방법을 배웠습니다. 아래의 과정을 거쳐서 이렇게 pull request 과정까지 갔었습니다. 이 사진은 로컬 리포지토리에서 git push를 한 후에 원격 리포지토리에서 pull request를 진행하는 화면입니다. (기억이 안나면 이전 포스팅을 참고해주세요) 이 화면에서 중요한 부분이 두 가지 있습니다. 보통 프로젝트를 진행할 때 1번은 commit 메세지와 2번은 commit 내용은 작성 규칙을 정해두고 진행을 합니다. 이 중에서 1번 commit 메세지는 git 컨벤션(Git Commit Message Convention)에 따라 작성하는게 관례입니다. ..

Flask 개발 기초 ① 개발 환경 구축, flask 설치(+가상 환경 배치 파일 만드는 방법)

[점프 투 플라스크]를 참고해서 작성한 글입니다. https://wikidocs.net/81041 1. 파이썬 가상 환경 구축하기 프로젝트의 첫 발걸음은 가상 환경 구축으로 시작합니다. 그냥 디렉토리 하나 만들고 진행하면 되는거 아니야? 할 수 있겠지만 가상 환경은 하나의 PC에 여러개의 독립된 환경을 만들어 줌으로써 프로젝트마다 서로 다른 버전의 파이썬과 라이브러리를 사용할 수 있어서 버전 관리하기 편합니다. 협업을 할 때 각 개발자의 PC환경은 다르지만 프로젝트 환경은 맞춰줘야 문제가 생기지 않는데 가상환경이 이 문제를 해결해줍니다. 가상환경 구축을 왜 해야하는지 알았다면 한 번 만들어 봅시다. 가상환경을 구축할 디렉토리(vens)를 만들고 그 안에서 명령어를 입력해줍니다. # Bash mkdir v..

윈도우 cmd에서 리눅스 명령어 사용하는 방법(WSL 설치)

리눅스에서 너무나도 당연하게 사용했던 명령어가 동작을 안하면 많이 당황스럽습니다. 이번 포스팅은 윈도우에서도 리눅스 명렁어를 사용할 수 있는 방법을 알아보겠습니다. 1. WSL 설치 cmd 창에 wsl 라는 명령어를 입력하면 wsl가 설치되어있지 않다는 문구와 함께 링크가 뜰겁니다. 그 링크를 클릭하거나, 윈도우 시작에서 microsoft store를 검색해봅시다. 여기서 리눅스 운영체제를 설치하면 되는데 저는 ubuntu를 설치했습니다. 설치가 완료되면 한 번 실행시켜 줍니다. 그럼 설치가 진행되고 사용이 가능하다는 메세지가 뜹니다. 다시 cmd 창에서 wsl 명령어를 사용해봅시다. 2. 결과