빨간 글씨의 저주
localhost:5000을 배움
파이썬 코드는 그냥 복붙인데 이것만 하면 다 된다이거에요~ 근데 안됨 ㅎㅎ
Address already in use
Port 5000 is in use by another program. Either identify and stop that program, or start the server with a different port.
On macOS, try disabling the 'AirPlay Receiver' service from System Preferences -> Sharing.
강의에선 쑥쑥 넘어가는데 나는 빨간글씨의 저주에 걸림... 일단 안된다는뜻~ 5000못쓴다는뜻~
if __name__ == '__main__':
app.run('0.0.0.0', port=5000, debug=True)
냅다 여기서 5000을 다른걸로 바꿔서 쓰도록 하자.
내용 몽고디비로 올리기.
@app.route("/homework", methods=["POST"])
def homework_post():
name_receive = request.form['name_give']
comment_receive = request.form['comment_give']
doc = {
'name': name_receive,
'comment': comment_receive,
}
db.homework.insert_one(doc)
return jsonify({'msg1':'팬명록이 작성되었습니다'})
function save_comment() {
let name = $('#name').val()
let comment = $('#comment').val()
$.ajax({
type: 'POST',
url: '/homework',
data: {name_give:name, comment_give:comment},
success: function (response) {
alert(response['msg1'])
window.location.reload()
}
})
}
save_comment는 두가지가 정의되는데 id값 name, comment이다. 그걸 각각 name_give랑 comment_give로 만들어서 이름표를 달아서 몽고디비에 올린다. 근데 왜 몇번씩 정의를 다시하는건지 모르겠움....
몽고디비에 올라가있는걸 가져오기.
@app.route("/homework", methods=["GET"])
def homework_get():
homework_list = list(db.homework.find({}, {'_id': False}))
return jsonify({'homework':homework_list})
function show_comment() {
$.ajax({
type: "GET",
url: "/homework",
data: {},
success: function (response) {
let rows = response['homework']
for (let i = 0; i < rows.length; i++) {
let name = rows[i]['name']
let comment = rows[i]['comment']
let temp_html = `<div class="card">
<div class="card-body">
<blockquote class="blockquote mb-0">
<p>${comment}</p>
<footer class="blockquote-footer">${name}</footer>
</blockquote>
</div>
</div>`
$('#comment-list').append(temp_html)
}
}})
}
몽고디비에 있는 homework를 가져와서 homework의 렝스만큼 1씩 늘려가면서 목록을 만들고 html에 그 결과값을 입힘.
분명 했던거 복습인데 왜이렇게 어렵냐.... 점점모르겠네....ㅠㅠ 게다가 간만에 했더니 다까먹음....
연습많이하기
완강