웹 개발 실습/Django18 [Django]_엑셀 계산 사이트 만들기 (6) result, loginFail 페이지 만들기, 그리고 번외(django에서 누가 봐도 깔끔하게 자료 만들기) 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. Result 페이지 만들기 이메일도, 메인도 모두 세션에 담겠습니다. 또한 Pandas와 Django 데이터 타입이 조금 다릅니다. 그래서 우리는 Pandas의 데이터 타입을 기본 데이터 타입으로 변환해야 합니다. ExcelCalculate > calculate > views.py로 이동하여 calculate 함수에 다음 코드를 추가합니다. # pandas django데이터 타입이 조금 다름 grade_calculate_dic_to_session = {} for key in grade_list: grade_calculate_dic_to_session[int.. 2023. 8. 3. [Django]_엑셀 계산 사이트 만들기 (5) 파일 업로드 및 분석 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 오늘은 드디어 파일을 업로드하고 읽어보겠습니다. 파일 업로드하기 우리에게 필요한 프로세스는 파일 업로드 / 계산 / 결과 화면 보여주기 가 있습니다. ExcelCalculate > main > templates > main > index.html 로 이동합니다. 41번째 줄을 다음과 같이 수정합니다. ExcelCalculate > ExcelCalculate > urls.py 로 이동하여 path를 추가해야 하지만 편의상 우리는 이미 했습니다. 흐름을 파악하기 위해 그래도 확인하고 갑시다. ExcelCalculate > calculate > urls.py 에.. 2023. 8. 2. [Django]_엑셀 계산 사이트 만들기 (4) 로그인 여부 확인, 로그아웃 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 오늘은 세션(session)을 이용할 것입니다. 오늘의 작업을 하기 전에 환경 설정을 확인합니다. 환경 설정 확인하기 ExcelCalculate > settings.py로 이동합니다. 다음 표시된 것이 있으면 됩니다. 없으면 추가해주세요. 세션에 user 정보 저장하기 ExcelCalculate > main > views.py 로 이동합니다. 쿠키를 통해 user 정보를 저장하던 방식을 세션에 user 정보를 저장하는 방식으로 바꿔줍니다. 입력했던 response.set_cookie('user', user)는 주석처리하고, 그 아래 두 줄 입력합니다. # .. 2023. 8. 2. [Django]_엑셀 계산 사이트 만들기 (3) 이메일 인증 회원가입 하기 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 지난 시간에 이어 진행하겠습니다. 인증 코드 발송하기 로그인 과정이므로 main에서 인증하는 것을 만들어야 합니다. 그리고 이러한 로직 처리는 views.py에서 설정을 합니다. 인증코드 함수는 join함수로 진행합니다. 로직을 생각해볼까요? 인증 코드 는 무작위로 생성하여 사용자에게 보냄 사용자에게 보낸(즉, 서버가 보낸) 인증 코드 == 사용자가 입력한 코드 : 가입 성공 사용자에게 보낸(즉, 서버가 보낸) 인증 코드 != 사용자가 입력한 코드 : 계속 같은 화면 보여주기 코드 보낼 때는 인증 코드, 이름, 이메일 , 기타 정보도 다 보내야 함. 무작위.. 2023. 8. 2. [Django]_엑셀 계산 사이트 만들기 (2) 회원가입 하기 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 이메일 인증으로 회원가입 하기 컴퓨터 혹은 모바일을 통해서 사이트에 회원가입을 한 경험은 아마 다수가 가지고 있을 것입니다. 우리는 철저히 사용자의 입장이었지요. 그럼 개발자 입장에서 회원가입하는 프로세스를 생각해볼까요? 다양한 인증 방법 중에서 우리는 이메일 인증 방법에 대해서 생각해 보겠습니다. user(사용자)가 회원 가입 화면에 개인 정보를 입력, '회원 가입하기' 버튼 클릭 입력한 정보로 user 데이터 모델 추가 및 데이터베이스에 저장, 인증되지 않은 user로 등록 사용자가 입력한 이메일로 인증 코드 발송 발송된 인증 코드는 user이름과 함께.. 2023. 8. 2. [Django]_엑셀 계산 사이트 만들기 (1) app의 웹 사이트, admin 화면 만들기 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 4을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 이번 프로젝트에서는 이전 프로젝트에서 한 것에 더하여 로그인 및 회원 가입을 추가로 구현할 것입니다. 가상 환경 접속 및 라이브러리 설치 먼저 작업할 폴더를 만들고 가상 환경으로 들어가 주세요. 저는 Excelcalculator 라는 폴더에서 작업합니다. mkdir Excelcalculator cd Excelcalculator/ virtualenv venv source venv/Scripts/activate requirements.txt를 생성하고, 다음을 입력한 후 저장합니다. terminal에 다음 명령어를 입력하여 라이브러리를 설치합니다. pip in.. 2023. 8. 1. [Django]_맛집 공유 사이트 만들기 (3) 이메일 보내기 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 3을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 이번 시간에는 '이메일 보내기' 기능을 구현해보겠습니다. 이를 위해서는 먼저 구글 계정이 필요합니다. RestaurantShare> shareRes > templates > shareRes > index.html로 이동합니다. 다음과 같이 태그의 action값을 채워줍니다. RestaurantShare> sendEmail > views.py로 이동하여 코드를 수정합니다. index.html의 227번째 줄을 보면 맛집들의 체크박스의 이름은 checks로 동일하다는 것을 알 수 있습니다. djang는 이름을 동일하게 했을 때 체크된 요소들만 그 value값을.. 2023. 7. 31. [Django]_맛집 공유 사이트 만들기 (2) READ, DELETE 그리고 Restaurant에 대한 CRUD 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 3을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. CRUD - READ 이제 사용자가 생성한 Category를 화면에서 확인할 수 있도록 READ를 구현하겠습니다. RestaurantShare > shareRes > views.py로 이동하여 코드를 수정합니다. Category 모델로 정의된 모든 객체를 불러오고, 9번째 줄에서는 이를 content 딕셔너리에 담는다. 그리고 render함수 마지막에 이 딕셔너리를 함께 전달하는 것이다. 이제 index.html에서 해당 content를 받아 사용자에게 보여주도록 설정합니다. RestaurantShare > shareRes > templates > shar.. 2023. 7. 30. [Django]_맛집 공유 사이트 만들기 (1) 프로젝트 구성 & CREATE 이 프로젝트도 마찬가지로 책 'Django 한 그릇 뚝딱'의 Chapter 3을 보며 실행해보았습니다. 책의 저자님께 다시 한 번 감사말씀 드립니다. 프로젝트와 app 구성하기 작업할 폴더를 생성하고 이동합니다. 저는 RestaurantShare 폴더를 생성 - 가상환경 접속 - 라이브러리 설치 까지 완료했습니다. mkdir RestaurantShare cd RestaurantShare code . virtualenv venv source venv/Scripts/activate pip install django 프로젝트를 생성하겠습니다. 프로젝트 이름은 RestaurantShare로 하겠습니다. django-admin startproject RestaurantShare cd RestaurantShare .. 2023. 7. 30. [Django]_ToDoList 만들기 (5) 데이터베이스에 저장하기 사용자가 입력한 메모를 데이터베이스에 저장하기 데이터베이스의 저장 로직은 views.py에서 시작합니다. 다음의 코드를 입력합니다. 그리고 print와 return 사이에 다음과 같이 코드를 입력합니다. new_todo = Todo(content = user_input_str) new_todo.save() 저장을 한 후 python manage.py runserver를 통해 웹 페이지로 이동합니다. 메모를 입력한 후 메모하기!를 클릭합니다. terminal에 다음의 명령어를 입력합니다. python manage.py dbshell 그리고 SELECT * FROM my_to_do_app_todo;을 입력합니다. 정상적으로 저장이 잘 되고 있습니다. 저장된 메모를 웹 페이지에 보이게 하기 실질적인 구현을 하.. 2023. 7. 30. 이전 1 2 다음 반응형