시연영상
https://youtu.be/DNkhCHsdcAQ
어려웠던 점
- 포스트할때 옵션태그에서 select한값 db에 저장할때. 토이프로젝트에서 라디오버튼 저장할때 배웠던 것과 비슷한게 있을 것 같아 스택오버플로우에서 답 발견
let selected = $('#star').find(":selected").text();
- 두가지 콜렉션을 참조해보는 것은 처음이었다. 계속 데이터는 잘 불러와지는데 페이지에 안떠서 당황했는데 알고보니 id값 넣는 자리 class값을 넣어서ㅎㅎ
@app.route("/board/data", methods=["GET"])
def board_get():
board_list = list(db.board.find({}, {'_id': False}))
main_list = list(db.drama.find({}, {'_id': False}))
return jsonify({'board':board_list,'main':main_list})
function show_comment() {
$.ajax({
type: "GET",
url: "/board/data",
data: {},
success: function(response) {
let rows = response['board']
let row = response['main']
for (let i = 0; i < rows.length; i++) {
let name = rows[i]['name']
let comment = rows[i]['bcomment']
let selected = rows[i]['selected']
let temp_html = `<div class="card-header">
${selected}
</div>
<div class="card-body">
<blockquote class="blockquote mb-0">
<p>${comment}</p>
<footer class="blockquote-footer">${name}</footer>
</blockquote>
</div>`
$('#comment-list').append(temp_html)
}
for (let i = 0; i < row.length; i++) {
let title = row[i]['title']
let temp = `<option>${title}</option>`
$('#star').append(temp)
}
}
});
- 느낀 점
역시나 아직도 깃은 어렵다.. 그래도 이번에는 메인에서 다같이 풀하고 푸시하고 머지해서 큰 문제는 없었다
로컬스토리지로 닉네임값을 저장해보고 싶었는데 템플릿과 부트스트랩이 꼬이는 문제로 시도를 못해봐서 아쉽다. 그래도 완성도 있게 잘 마무리한 것 같아 좋았다
나를 제외한 팀원분들이 다 윈도우 유저여서 certifi 패키지 문제로 매번 내가 app.py를 수정하면 깃에서 충돌이 날 것 같아 두려워서 거의 화면 공유로 입코딩을 했는데 생각해보니 나만 쓰는 파이썬 파일을 하나 만들었으면 될 문제였던 것같다. 잠이 부족했어서 그랬나 왜 그게 생각이 안났을까...다음날 자고 일어나니 생각났다...