목록파이썬 (147)
꿈 많은 사람의 이야기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rxfQi/btqwl6pjVkz/4euWCMwRKEMwIKGSaT7HF0/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난 포스팅까지 진행하면서 django에서 Ajax를 활용한 것을 보여드렸습니다. Ajax를 활용해서 checkbox 체크 여부에 따라 일정이 완료 되었는지, 완료되지 않았는지 바로바로 보여질 수 있도록 했죠 그러면 게시판 글쓰기, 수정하기, 삭제도 되고 Ajax를 활용해서 일정 완료 여부 기능까지 만들었는데요 이번 포스팅에서 뭘 할것이냐? 이 Ajax를 다시 사용해봅니다 그래서 일정의 우선순위를 만들어서 우선순위 별로 정렬되어 웹 화면에 출력이 되도록 할 것입니다! 먼저 DB에서 PRIORITY..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/WyVKj/btqvYOVZvAb/VkyONTnkiRplSOvLexzvHK/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난 포스팅에서 python django를 활용하여 게시판 만들기 todo 게시글 추가, 상세보기, 수정, 삭제를 만들었습니다 근데 아직 일정에 date 값을 넣지 못했는데요 todo list에서 마감 시간까지 넣을 수 있는 end date 값을 넣을 수 있게 해봅니다 보통 일반적으로 bootstrap(부트스트랩) 등을 이용해서 date 정보를 input하려고 하면 calcalendar를 만들거나 하는 등으로 날짜를 입력 받을 수 있게 구현을 해줘야합니다. 이게 말이 쉽지 결코 쉽지 않습니다. 어..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dVcoVR/btqvXvBYtQb/gyGTxyqdVV7hZlr2l9W4Sk/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난 포스팅까지 진행하면서 update view까지 만들었습니다. 이제 게시판에 필요한 delete view를 만들어봅니다 그러면 todo app에 필요한 추가(write), 상세보기(read), 수정(update), 삭제(delete)까지 전부 완성됩니다 ㅎㅎ 먼저 삭제 버튼을 만듭니다. 마찬가지로 delete에 해당되는 url을 만들어줍니다 게시판을 삭제해야 하니까 pk값이 필요합니다. pk값도 넘겨주는 코드를 작성합니다 그리고 django의 generic의 deleteview를 상속해줍니다 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/5jdou/btqvDiLuUbA/fmetVHvrnSPdq8TKm5nrRk/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난 포스팅까지 python django 프레임워크를 활용해서 todo 게시판 만들기 detail view와 list view를 만들었습니다. 이제 게시판에 필요한 update(수정)과 delete(삭제)만 남았군요! 이번 포스팅은 게시판 수정(update)를 만들어보겠습니다 바로 시작하죠! 장고에서는 update와 관련한 기능도 제공해줍니다. 그것을 활용할 것입니다 먼저 상세보기 페이지에서 수정 키워드를 넣습니다 update를 하기 위하여 todo_board:todo_board_update의 u..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cnlezT/btqvFgSurw7/znzVGbkqHVUwKkMkb7OiM1/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난 포스팅까지 forms.py를 이용해서 글을 쓰고 실제로 mysql db에 들어가는 것까지 보았습니다 보통 게시판이라고 하면은 글쓰기, 읽기, 수정, 삭제 이렇게 있죠? 현재 저희는 글쓰기까지 진행을 했는데요. 이번 포스팅은 읽기 부분입니다. 즉, 상세보기 페이지를 만들겁니다 바로 시작합니다 상세보기를 하려면 먼저 urls.py를 수정해야합니다 url 부분에 ?P[0-9]+ 부분을 넣고 detail 식으로 들어가죠? pk는 게시판 고유 번호입니다. 즉 고유번호/detail url로 들어가면 해..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/B3bbe/btqvwMShcPD/KxRCn56ZvkVMHg6sR5lejK/img.png)
퀵 정렬(quick sort)에 대해서 많이 들어보셨을 겁니다. 정렬에는 삽입 정렬(insertion sort), 선택 정렬(selection sort) 등이 있는데요. 퀵 정렬은 이러한 정렬 알고리즘보다 훨씬 빠른 속도로 정렬을 해주는 알고리즘입니다. 퀵 정렬은 분할 정복(divide and conquer) 방법을 사용하는 알고리즘 중 하나입니다 분할 정복 문제를 작은 2개로 분리하고 각각 해결한 다음 이를 합쳐서 원래의 문제를 해결하는 방법입니다. 보통 재귀 호출 등으로 사용하게 됩니다 퀵 정렬 과정 퀵 정렬을 위와 같은 과정을 통해 정렬이 진행됩니다. 1. 리스트 안에 한 요소를 선택합니다. 이를 pivot(피벗)이라고 합니다. 2. pivot을 기준으로 작은 값은 왼쪽, 큰 값은 오른쪽으로 분리시..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ZnhmT/btqvuYsoMll/YvgGgCGvssaRIyV1twK83k/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 이번 포스팅은 django의 forms.py를 이용해서 todo 게시판에 글을 작성하였을 때 글쓰기가 가능하게 만들어봅니다~ 실제 mysql에 데이터도 넣어지는 것을 확인할 수 있습니다 django에서 forms.py는 form을 만들어주는 역할을 합니다. form은 말 그대로 폼인데요. 회원가입 폼, 로그인 폼 등 어떠한 폼을 만들면 forms.py를 통해 직접 django가 만들어줍니다~ todo board 아래에 보시면 forms.py가 있을겁니다. 저것을 이용합니다 forms.py에는 mo..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cCtxwl/btqvsZYSz9r/2SghsT1nPgMJvKH3PXyQL1/img.png)
완성된 코드는 아래 github 주소에 있습니다!도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠ https://github.com/lsjsj92/django_todo_app 지난 포스팅에서 간단하게 django와 mysql을 연동했습니다. 하지만 값을 가져오거나 그런 행동을 취하진 않았죠 그냥 settings.py에다가 pymysql을 가져와서 설정만 해주었습니다. 이제 실제 db를 가져오고 연동하는 방법을 알아보겠습니다 MTV 패턴에서 M(Model)부분에 해당됩니다 CREATE DATABASE todo_app; use todo_app; CREATE TABLE TODO_LIST( NO INT NOT NULL AUTO_INCREMENT PRIMARY KEY, PCOD..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/mxQWa/btqvt8AQpKu/ngityqGozjCZxcxOUMt0z0/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠ https://github.com/lsjsj92/django_todo_app 지난 포스팅에 app을 만들어서 화면을 띄웠습니다 이번 포스팅은 상단 메뉴 header 부분을 따로 빼놓고 실제 main은 이 header를 extends 하는 방법을 사용해서 템플릿을 따로 만들어 놓겠습니다. 장고에는 template language가 있습니다. html 템플릿 안에서 {% for %}, {% if %} 문 등을 사용할 수 있죠 그리고 저희가 앞서 static 폴더에 파일을 놓은 것을 {% static %}을 통해 가져올 수도 있습니다 그리고 위에서 말씀드린 것처럼 템플릿 상속..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oEFTX/btqvsytnwgd/6XsO2lXqhgKQ1MhUwGS3a0/img.png)
완성된 코드는 아래 github 주소에 있습니다! 도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app 지난번 포스팅에서 django를 설치하고 앱을 생성하고, 데이터베이스 migrate도 해보았습니다. 그리고 admin user를 만들었죠 이번 포스팅은 이제 실제 웹 페이지를 띄우도록 합니다 view와 template부분, static 부분을 연동하는 과정을 진행합니다. todo list 게시판을 만들기 위한 전초 작업입니다. 사실.. django로 게시판 만들기와 같다고 생각하시면 됩니다. 저는 먼저 static 폴더를 하나 만들었습니다. todo_main에 디렉토리를 하나 만들어서 그 밑에 c..