서버로 연결된 기존 쇼핑몰 사이트
삭제 기능을 만들게 된 과정
👩🏻 : 여기 사이트로 들어가봐
👶🏻 : 이거 진짜 결제 되는거야?
👩🏻 : 결제 안되는거얔ㅋ
👶🏻 : 나 했어 봐봐
👩🏻 : 진짜 핸드폰 번호를 입력했어? 이거 다 볼 수 있는거야
👶🏻 : 이거 취소 어떻게 해??
👩🏻 : ... !!!
이렇게 삭제하는 기능이 추가 되었다.
진행 과정
처음에 생각한 것은 취소하기 버튼을 추가된 목록마다 생성을 하려고 했다.
그래서 취소하기 버튼을 누르면 해당하는 행의 목록이 사라지게 하려고
db에서 가져와서 브라우저에 띄울 때 같이 넣으려고 했는데 버튼이 생성되지 않았다.
데이터 가져오는 코드에도 작성해보고 테이블 양식에도 넣어봤는데 아무것도 안떴다.
* 위 그림처럼 구현하기 >> 7일차 - 6일차 쇼핑몰 주문하기 삭제기능 만들기(변경)
그래서 다른 방법을 찾았고 주문하기 옆에 취소하기 버튼을 만들까? 했는데 주문하기 옆에 두는게 뭔가 이상했다.
4일차 밤에 주문하기 버튼을 누르는 대신 취소하기 버튼을 누르면 내가 주문하기 전 입력한 값을 삭제해서
다음 날 해야겠다 하고 실행을 못했는데 5일차 Git 실강 쉬는시간에 끄적이다가 실행시켰다...!!
취소하기 버튼은 주문할 때의 input 박스와 버튼을 그대로 복사해서 하려고 하다가 디자인을 변경했다.
사이트 >> 🎈
취소하기 input box에 주문자 이름을 넣고 서버는 해당 이름을 받아서
그 이름에 해당하는 데이터를 삭제하는 기능으로 작성했다. (* moviestar 코드를 참고하면 쉽다.)
db.orders.delete_one({'name': name_received})# 받은 이름으로 삭제하기
❕ ❕ ❕
코드를 작성하면서 하나 씩 이해하는 중인데 .py와 .html에서 굳이 같은 함수를 사용안해도 된다.
.py
@app.route('/python/delete', methods=['POST'])
def order():
.html
function delete() {
$.ajax({
url: '/python/delete',
type: 'POST',
굵게 표시한 부분이 같으면 되는 것 같다.
(물론 데이터 값 주고 받는 변수가 있다면 같아야 하지만)
아쉬운 점
해당하는 이름이 없으면 이름이 없습니다를 구현하고 싶었다.
if문을 활용하여 find를 사용해서 있으면 취소되었습니다 메세지를 띄우고
없으면 해당 이름은 없습니다 메세지를 띄우고 싶었는데 실행시켜보면 해당 이름은 없습니다가 뜨고 삭제가 되었다.
'TIL' 카테고리의 다른 글
11일차 (0) | 2021.09.24 |
---|---|
7일차_6일차 쇼핑몰 주문하기 삭제기능 만들기(변경) (0) | 2021.09.20 |
5일차_Git 정리(오류 해결하기) (0) | 2021.09.17 |
4일차 (3주차_에러 해결, 탭 아이콘 이미지 넣기) (0) | 2021.09.17 |
3일차(에러발견, 연관검색어 크롤링 후 브라우저에 띄우기) (0) | 2021.09.16 |