본문 바로가기

Python15

Python 이론 정리 https://www.notion.so/b0d2e3201c444d119453fccb08cc5205 파이썬 이론 #목차 www.notion.so 2022. 6. 23.
[django] 404인 경우 실행할 내용 지정 python에서 get_objects_or_404 로 데이터를 받아온 경우, 해당하는 데이터가 없으면 404페이지가 떠버립니다. 이 경우 실행할 내용을 지정하기 위해 처리해보겠습니다 ^0^ 기본 get_list_or_404 를 사용해 아래처럼 코드를 사용했을 때, 해당하는 데이터가 없으면 아래처럼 에러가 뜹니다. dietlist = get_list_or_404(테이블이름, user_id=idx, date=date) 그런데 만약 데이터가 종종 없다면? 데이터가 없는 게 비정상적인 일이 아니라면 추가로 실행할 내용을 지정해 줘야 합니다. 이 경우 get_objects_or_404 를 사용하게 되면 추가 실행 내용을 지정해줄 수 없어요. 대신 아래처럼 변경해주면 됩니다. dietlist = 테이블.object.. 2022. 5. 31.
django 서버 돌리는 법 [팀원 간 내용 공유를 위한 페이지입니다. 일반 사용자에겐 응용이 어려울 수 있습니다] AWS에 모든 설치는 끝났다고 가정, 장고 서버 돌리는 법 설치 목록 sudo apt update sudo apt upgrade sudo apt install mysql-server sudo apt install pip sudo apt install lib sudo apt install libmysqlclient sudo apt install libmysqlclient-dev sudo apt install default-libmysqlclient-dev sudo apt install build-essential pip install mysqlclient sudo apt install python3-django sudo.. 2022. 5. 26.
django 실행 시 에러 해결(did you install mysqlclient?) django를 실행하려고 python manage.py ....명령어들을 치면 자꾸 아래 메시지가 나왔습니다. django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module. Did you install mysqlclient? pip install mysqlclient를 하면 아래처럼 자꾸 디렉토리가 이것도 없고 저것도 없다고 에러가 뜨더라고요. MySQLdb/_mysql.c -o build/temp.linux-x86_64-cpython-310/MySQLdb/_mysql.o -std=c99 error: command 'x86_64-linux-gnu-gcc' failed: No such file or directory [end of ou.. 2022. 5. 18.
[django] 입력값과 일치하는 것들에 수식 넣기 목표 : 음식 이름을 입력하면 일치하는 항목을 찾아 해당 음식의 중량 대비 kcal, 탄수화물, 지방 등의 영양 정보를 계산하고 sql에 합계값을 저장하도록 합니다 프로젝트 진행 중, AI가 사진을 분석한 결과값(음식 이름, 중량)을 리턴해주면 값을 정제하여 MySQL에 저장해주는 기능이 필요해졌습니다. 일단 음식 이름과 중량 대비 영양소가 어느정도인지 기준 데이터가 필요합니다. 데이터는 AI Hub에 있는 '영양성분 데이터'를 사용하기로 했습니다. 데이터는 아래처럼 구성되어 있어요. MySQL에 이 데이터를 넣으려 합니다. 먼저 테이블을 생성해야 하는데 저희 프로젝트는 django를 프레임워크로 사용하므로 django의 models를 사용하여 생성해 주기로 합니다. 컬럼 이름이 참 직관적이죠..? ^_.. 2022. 5. 10.
[django] form 입력값을 sql에 저장하기 html의 form에서 입력받은 값을 django를 통해 MySQL에 저장하려고 합니다. 예제는 회원가입 폼입니다. 아래와 같은 화면에서 입력받은 값을 그대로 sql에 저장하기도 하고, 약간의 계산을 주어 저장하기도 합니다. views.py에서 저장 기능을 구현합니다. 2022. 5. 9.
[django] 장고에서 return 지정하기 웹 페이지를 만들다 보면, 백엔드 로직을 수행하고 나서 바로 html로 이동하는 경우도 있지만 url을 직접 지정해줘야 하는 경우도 있습니다. 이런 return방법들을 정리해보려 합니다! * 각각의 방식 사용 시 import해줘야 하는 내용도 함께 기재합니다! 1. 기본형 (이동할 html을 지정해주기) return render(request, '이동할_html_화면.html, 추가적으로_보내줄_정보가_있다면_여기에_딕트_추가) 2. 다른 views파일의 def로 이동하기 from django.http import HttpResponseRedirect from django.urls import reverse return HttpResponseRedirect(reverse('앱이름:뷰def이름', args.. 2022. 5. 4.
django - 이미지 파일 업로드하고 html 불러오기 html로 구현된 화면에서 이미지를 업로드하면 django를 통해 지정된 폴더에 이미지가 저장되고 저장된 주소는 MySQL에도 저장되도록 제작했습니다. 설명을 이해하기 쉽도록 변수는 한글로 기재하지만 실제 프로그래밍 시에는 영어로 된 변수를 설정해주셔야 합니다. 참고한 사이트 Django에서 파일 업로드 Django에서 파일을 업로드하는 방법 알아보기 www.delftstack.com 진행 전, 가상환경에는 Pillow가 설치되어 있어야 합니다. 터미널에서 pip install Pillow를 실행하여 설치할 수 있습니다. 장고와 MySQL의 기본 빌드는 이미 구성된 상태임을 전제로 합니다. 참고 사이트에서는 Core라는 앱을 하나 생성해서 사용했지만 저는 기능별로 앱을 구분해서 사용했습니다. 따라서 아래.. 2022. 4. 21.
Django -MySQL 데이터에 필터 걸어 딕트로 가져오기 목표 : 아이디와 날짜를 받아 일치하는 데이터들의 합계를 구하기 자세히 설명하면, 보시는 것처럼 링크에 id와 날짜 문자열이 입력되면 그 값을 받아서 MySQL의 DB 중 user_idx컬럼의 값이 id인 zenna와 같고, date컬럼의 값이 날짜(date)인 '2022-04-14'와 같은 데이터를 고릅니다. zenna는 2022-04-14에 데이터를 두 번 등록했네요. 딕트의 dang은 4+0=4, dan은 8.74+41.8= 50.54 니까 딕트에는 {'dang' : 4, 'dan' : 50.54} 식으로 추가가 되겠네요. 파이썬 작업 코드는 views.py에 작성합니다. 필요한 것들을 먼저 import해주겠습니다. MySQL의 DB는 'diet'라는 테이블에 저장되어 있습니다. 따라서 테이블을 불.. 2022. 4. 15.
728x90