부트스트랩 폰트 바꾸기
버튼을 만들었는데 * { } 으로 body 전체에 폰트를 적용했음에도 불구하고 부트스트랩의 버튼은 폰트가 바뀌지 않았다.
그래서 따로 count_btn 클래스를 지정해주어 폰트를 바꾸었다. 폰트 적용 전에 넣어두었던 부트스트랩 버튼은 잘 적용됐었는데 폰트 적용 후에 새 버튼을 넣어서 그런건지.. 아직 원인은 명확하지 않다.
.count_btn {
font-family: 'DOSGothic';
}
.
.
.
<div class="result" style="margin: 0px 0px 0px 20px; width: 30rem; display:flex; justify-content: space-evenly;">
<button type="button" class="btn btn-outline-primary count_btn">승: {{wins}}</button>
<button type="button" class="btn btn-outline-danger count_btn">패: {{losses}}</button>
<button type="button" class="btn btn-outline-dark count_btn">무승부: {{ties}}</button>
</div>
이렇게 해서 해결.
테이블 만들기
html에서 table 만들었는데 아까 튜터님 해설 강의 들으면서 알게 된 사실
<tbody>
{% for history in histories %}
<tr>
<th scope="row">{{ history.id }}</th>
<td>{{ history.computer_choice }}</td>
<td>{{ history.user_choice }}</td>
<td>{{ history.result }}</td>
</tr>
{% endfor %}
여기서 {% for i in data %} ... {% endfor %} 는 Jinja2 에서 쓰는 문법 같은 것인가 보다. 기존에 만들었던 movie.html 파일 보고 쓴 건데 이런 유래가..!! Jinja2에 대해서도 더 배울 일이 있겠지.
@app.route('/reset', methods=['POST'])
def reset_database():
# 데이터베이스의 기록 삭제
db.session.query(GameHistory).delete()
db.session.commit()
message = "게임 기록이 삭제되었습니다."
return redirect(url_for('rockscissorspaper', message=message))
시간이 좀 남기도 했고, 내가 워낙 버튼을 눌러대서 데이터가 너무 많이 쌓였길래 만들어보았다. /reset 주소에 POST 를 하는 방식인데 아직 완전히 이해는 안 됐다. 어쨌거나 query를 삭제하고 commit 한 다음 redirect를 통해서 다시 rockscissorspaper 로 돌아가는 거라고 이해함.
커밋까지 다 해보긴 했는데 그래도 아직 보충이 필요한 것 같아 튜터님 세션을 한 번 더 들었다. 그래서 원래 내배캠용 레포에 다 몰아넣고 싶었기 때문에 한 번 더 과제들을 커밋해 보았다.
과제 4번 업로드하면서 테스트 목적으로 두었던 test.html 파일이 같이 업로드되었다. 원격 저장소에 있는 파일을 삭제해보기로 함.
git rm --cashed -r 폴더명/파일명
git commit -m "파일 삭제"
git push -u 레포명 브랜치명 e.g. git push -u origin main
이렇게 하면 레포에 저장된 파일 삭제 및 커밋까지 끝 !!
Today I Thought
드디어 과제가 끝났다....! 4번까지 잘 끝내서 뿌듯함. 물론 웹페이지 꾸미다가 약간 지쳐서 좀 대충 꾸미긴 했는데.. 그래도 뭔가가 된다는 게 신기하다!! 그리고 드롭다운 방식으로 submit 하는 게 영 예쁘지 않아서 버튼 세 개로 바꿔보는 나름의 시도를 한 것도 만족, 데이터베이스 삭제 기능이 있는 것도 만족했다.

깃허브 링크!
프론트엔드가 눈에 확 보여서 더 재미있을 거라고 생각했는데 이번 과제로는 오히려 백엔드가 재미있었던 것 같기도 하다. 물론 이렇게 간단한 것으로 파악하기에는 쉽지 않겠지만..!! 다양한 가능성을 열어두는 걸로.
다음주에는 또 새로운 것을 하게 될 텐데 잘 해내고 싶다. TIL도 더 잘 작성하고 싶으니까 템플릿화 해봐야겠다.