전체 글
-
장고 수정 기능 구현백엔드 : 서버공부/Django 2023. 7. 31. 00:28
이번에는 CRUD중 UPDATE에대한 기능을 구현해보겠습니다. CRUD중 가장 어렵다고 알려진 UPDATE는 앞에서 배웠던 모든 기술을 총동원해야 한다고합니다. 구성하려는 페이지 구성은 다음과 같습니다. 페이지의 홈 화면에서는 create 버튼만 나타납니다. 상세보기 페이지를 누르게되면 update버튼이 나타납니다. 그 버튼을 클릭하면 사용자가 선택한 내용이 폼에 들어가있습니다. 글을 수정한 후 제출버튼을 누르면 변경사항이 서버에 전송되고, 변경된 topic의 상세보기 페이지로 이동하게됩니다. 상세보기 페이지에 들어가면 update 링크가 뜨게먼저 함수를 수정해보겠습니다. 아래와같이 HTMLTemplate을 수정해줍니다. def HTMLTemplate(articleTag, id=None): global ..
-
장고 삭제 기능 구현백엔드 : 서버공부/Django 2023. 7. 29. 13:37
장고에서 삭제 기능을 구현해보겠습니다. 동작하는 방식을 보자면 글의 상세페이지를 눌렀을때 Delete버튼이 나타나게 됩니다. 버튼을 클릭하면 해당 글이 삭제되고 홈으로 이동하도록 구성해보겠습니다. 버튼을 추가해보겠습니다. 아래와 같은 코드를 추가해줍니다. 아래는 수정사항이 반영된 HTMLTemplate함수입니다. def HTMLTemplate(articleTag): global topics ol = '' for topic in topics: ol += f'{topic["title"]}' return f''' Django {ol} {articleTag} create ''' 아래와 같이 버튼이 추가된것을 확인할 수 있습니다. delete의 기능을 구현해보겠습니다. 버튼을 링크로 구현할수도있습니다. 기존의 코..
-
장고 생성 기능 구현 2백엔드 : 서버공부/Django 2023. 7. 29. 13:32
view.py에서 구현한 함수를 살펴보겠습니다. 사용자 요청이들어오면 요청을 장고가 받습니다. 장고는 사용자의 요청에 포함된 여러가지 정보들을 분석해서, 만들어둔 create함수를 장고가 호출합니다. 호출한 후 첫번째 파라미터의 인자로 HttpRequest라는 객체를 만드는데 그 객체안에 사용자의 요청과 관련된 여러가지 정보들을 패키징한 정보를 객체란 형태로 만들어 우리에게 공급합니다. 우리는 request를 분석해서 처리를 하는 코드를 작성하고, HttpRespinse라는 객체를 응답해주면 그 정보가 장고에 의해서 사용자의 브라우저로 전달되게 되는 것 입니다. https://docs.djangoproject.com/en/4.2/ref/request-response/를 살펴보면 request.method..
-
장고 생성 기능 구현 1백엔드 : 서버공부/Django 2023. 7. 29. 13:27
이번에는 글을 작성하는 기능을 구현하는 방법을 살펴보겠습니다. 사용자가 글의 제목과 내용을 입력하면 topics에 추가되면서 페이지에 링크가 만들어지는 기능을 구현해 보겠습니다. 먼저 글쓰기페이지로 이동할 수 있는 링크를 추가해보겠습니다. 아래와 같이 body태그 밑에 링크를 추가합니다. def HTMLTemplate(articleTag): global topics ol = '' for topic in topics: ol += f'{topic["title"]}' return f''' Django {ol} {articleTag} create ''' 그리고 이후에 create 기능에 delete,update기능도 만들것이기 때문에 기능들을 리스트로 표현하겠습니다. 아래와 같이 한번 더 수정해 줍니다. def..
-
장고 읽기 구현 2백엔드 : 서버공부/Django 2023. 7. 29. 13:03
장고 읽기 구현 2 이제 read함수 부분을 구현해보겠습니다. read함수도 똑같은 형식의 html형식을 공유합니다. 그렇기 때문에 html코드를 함수화 시켜보겠습니다. 아래와같이 코드를 수정해 보겠습니다. from django.shortcuts import render, HttpResponse topics = [ {'id':1, 'title':'routing','body':'Routing is ..'}, {'id':2, 'title':'view','body':'View is ..'}, {'id':3, 'title':'Model','body':'Model is ..'} ] def HTMLTemplate(): global topics ol = '' for topic in topics: ol += f'{to..
-
장고 읽기 구현 1백엔드 : 서버공부/Django 2023. 7. 29. 12:59
아무리 복잡한 애플리케이션도 CRUD라는 네가지 작업안에 갇혀있습니다. Create, Read, Update, Delete 지금은 이 네가지 중에서 Read작업을 수행해 보겠습니다. Read는 다시 homepage와 **상세보기(article)**라는 두가지 작업으로 나눠집니다. 먼저 views.py를 수정해서 기본적인 html코드를 작성해 보겠습니다. from django.shortcuts import render, HttpResponse import random # Create your views here. def index(request): return HttpResponse('Random'+str(random.random())) def create(request): return HttpRespon..
-
장고를 사용하는 이유백엔드 : 서버공부/Django 2023. 7. 29. 12:57
이번에는 Web Server를 사용하는것과 Web Application Server를 만들어서 사용하는 것의 차이에대해 공부해보겠습니다. Web Server Web Application Server apache, nginx, IIS django, flask, php, jsp, ROL 차이점 STATIC Web Server를 사용할때는 1html, 2html과 같은 페이지를 미리 만들어 두어야합니다. Web Server에 ****사용자가 접속시에 미리준비되어 있는 페이지로 접속을 하게 됩니다. 준비되어있는 것을 사용하므로 성능이 빠릅니다. DYNAMIC Web Application Server를 사용할 때는 웹페이지를 생성하는 공장이라고 할 수 있는 view.py와 같은 프로그램을 하나만 만들어 두면 됩니..