본문 바로가기

내일배움 캠프/TIL

2023 03 15 python 방명록수정 기능

    col.update_one({'index':index,'pw':pw},{'$set':{'comment':comment_data}})

update_one을 이용해서 인덱스와 pw값을 비교해서comment값을 수정하는 코드를 작성했습니다

    result = col.find_one({'index':index2,'pw':pw})
    if result is None:
        return jsonify({'msg': '수정 실패!'})
    else:
        return jsonify({'result': 'True'})​

처음에 수정버튼을 눌렀을때 인덱스와 pw값을 비교해서 올려진 db와 값이 일치하는지 확인한다음에 수정할수있는 창을 나오게했습니다

fetch('/comment3', { method: "POST", body: formData }).then((res) => res.json()).then((data) => {
        if (data["msg"] == '수정 실패!') {
            alert(data["msg"])
        }
        else {
            let temp_html = `<input type="button" class="control_btn" id="edit_comment" onclick="edit_confirm(this)" value="확인">`
            tr.querySelector('#edit_comment').remove()
            tr.querySelector('.control_btn').insertAdjacentHTML('afterend', temp_html)

            cmt_data = tr.querySelector('.cmt_data').innerText
            let temp_textarea = `<textarea class="form-control comment_edit" placeholder="코멘트를 남겨주세요" id="floatingTextarea">${cmt_data}</textarea>`
            tr.querySelector('.cmt_data').innerHTML = temp_textarea
            tr.querySelector('.chk_pw').setAttribute('readonly', 'readonly')
        }
    })​

비밀번호가 틀렸을때는 받아온 msg값을 alert하고 그게 아닌경우에는 table의 값을 삭제하고 그 값을 textarea에 들어가게 해서 수정이 되는 느낌을 주었습니다