마지막으로 Update 기능을 구현해보자. delete버튼처럼 상세보기 페이지(read)로 들어가면 update버튼이 나타나고 이를 클릭하면 수정하는 창이 생긴다. 그 창에는 기존 정보들이 들어있고 제출을 클릭하면 수정한 정보로 바뀌며 해당 상세보기페이지로 간다. 가장 복잡하긴 하지만 이전에 공부한 CRD를 잘 활용하면 충분히 만들 수 있다. 먼저 상세보기페이지로 접속했을 때, 버튼이 생성되게 해 보자 delete_btn = '' if id != None: delete_btn = f''' update # 기존에 만들어 두었던 delete버튼에 추가 # 글 수정을 위해 id값을 가지고 접속한다 ''' 뭔가 delete_btn이라는 이름이 마음에 안 드니 이름도 바꿔주었다 (delete_btn이라는 이름을 ..
삭제 기능을 구현해보자 """ 게시글을 누르면 삭제 버튼이 나타난다. 삭제 버튼을 누르면 해당 게시글은 삭제된다. 홈으로 이동한다. """ 우선 삭제 버튼을 만들어 보자 버튼을 누르면 해당 링크로 이동하는 것이 아닌 버튼을 누르자마자 서버의 데이터를 변경하는 것이기 때문에 POST방식으로 접근해야 한다. 그리고 이를 사용하기 위해 을 사용한다. def HTMLTemplate(articleTag): global topics ol = '' for topic in topics: ol += f'{topic["title"]}' return f''' Django {ol} {articleTag} create # form을 사용하여 POST방식으로 접근 ''' 이제 무엇을 삭제할지를 전달해 주어야 한다 read페이지의..
오늘 할 일 Create를 클릭했을 때, 주소가 create로 이동하며 articleTag 자리에 create 창이 생성되고 제출을 클릭하면 글이 생성되고 생성된 글의 상세보기로 이동하는 기능을 만든다. Create 기능을 만들기 위해서 우선 Create버튼을 만들어 보자 클릭해보면 create페이지로 잘 이동하는 것을 볼 수 있다. Django {ol} {articleTag} create # 새롭게 생성한 버튼 create페이지로 이동하는 대신 articleTag 자리에 create 창이 생기도록 해보자 def create(request): article = ''' ''' return HttpResponse(HTMLTemplate(article)) 그리고 아무 글이나 입력 후 제출 버튼을 눌러보자 요청..
아무리 복잡한 애플리케이션이라도 4가지 안에 있다. Create Read Update Delete 이중 먼저 Read를 알아보자 myapp에 views.py 에 index함수에 html 파일을 써보자 def index(request): return HttpResponse(''' Django Create Read Update Delete Welcome! Hello, Django ''') 그리고 서버를 실행한 뒤 접속하면 다음과 같은 웹페이지가 보인다. 생성되는 리스트들을 topics라는 변수에 담아보자 topics = [ {'id':1, 'title':'Create', 'body':'Create is ..'}, {'id':2, 'title':'Read', 'body':'Read is ..'}, {'id':..