장고의 form 웹 클라이언트에서 사용자의 입력을 서버로 전송하기 위해 자주 사용하는 방법으로 HTML form 이라는 것을 사용한다. 이번 글에서는 이 form을 어떻게 잘 사용할 수 있을지에 대해서 다루려고 한다. 먼저 장고에서 제공하는 기능 말고 순수하게 HTML을 이용해서 서버로 전송하고 결과를 응답받는 원시적인 방법부터 살펴보자. 지난 글에서처럼 새로운 앱인 v5 앱을 먼저 생성해야 한다. 터미널에서 앱을 생성 후 settings.py와 urls.py를 수정하는 것을 잊지 말도록 한다. 그럼 준비가 되었다는 가정하에 먼저 구성해 볼것은 127.0.0.1:8000/v5 로 요청이 들어오면 “이름”과 “취미”를 입력받아 서버로 전송하고 그 결과를 보내는 것을 해보도록 한다. v5/urls.py ap..
지금까지의 글은 주로 장고의 뷰 계층을 다루었다. 엄밀히 이야기하자면 함수형 뷰 라는 것을 이용하여 간단한 웹페이지를 구성해보았다. 이번 글에서는 지금까지 언급하지 않았던 뷰 계층에 대한 조금 심층적인 이야기를 하려고 한다. 장고의 뷰는 크게 함수형 뷰와 클래스형 뷰로 나뉜다. 처음에 장고는 함수형 뷰만 제공했는데 동일한 코드를 사용하지 않도록 템플릿화하여 클래스형 뷰를 추가하였다. 공식 문서에서 밝힌 바와 같이 클래스형 뷰는 기존의 함수형 뷰를 대체하는 것이 아니다. 주로 사용하는 코드를 간결하게 만들어 놓은 것이라 보면 좋을 것 같다. 그렇기 때문에 사용은 편하지만 사용을 위해서는 추가적인 학습이 필요하다. 당연한 trade-off 라고 보여진다. 참조: https://medium.com/@ksart..
이번 글에서는 이전 블로그의 내용을 바탕으로 간단한 웹페이지를 만들어보겠다. 웹페이지는 부트스트랩을 활용할 것이며, 장고에 이를 적용하여 구성하겠다. 부트스트랩은 오픈 소스 프론트엔드 프레임워크로서 무료 템플릿을 잘 활용하면 손쉽게 나만의 홈페이지를 구성할 수 있는 장점이 있다. 이 글에서는 웹페이지 디자인과 개발을 할 것이 아니기 때문에 부트스트랩을 활용하는 것이다. 웹에서 부트스트랩 무료 템플릿을 검색하면 나오는 것들 중 하나인 https://startbootstrap.com/previews/creative 를 다운로드 하여 준비한다. 파일만 다운받아 놓고 장고로 돌아와 세번째 애플리케이션을 생성한다. 이름은 v3 로 하겠다. 지금까지 해본 것 처럼 콘솔에서 python manage.py starta..
Template을 생성하여 결과 보내기 이번 글에서는 Template 을 통해 HTML 을 렌더링하여 요청 결과를 보내주도록 하려고 한다. 먼저 v2 라는 새로운 애플리케이션을 생성한다. 콘솔에서 python manage.py startapp v2 를 입력 후 실행하면 아래의 그림과 같이 v2 애플리케이션이 생성된다. 애플리케이션을 생성할 때마다 settings.py의 INSTALLED_APPS에 애플리케이션명을 추가해 주는 것과 프로젝트 urls.py의 urlpatterns에도 애플리케이션 path를 추가하는 것도 잊지 말고 해야 한다. 시작에 앞서 한가지 설정을 먼저 하고 넘어가려고 한다. html 파일들 경우 애플리케이션을 생성할 때마다 해당 애플리케이션 경로에 생성하지 않고 프로젝트 한 곳에 모아..
지난 글에서는 장고를 시작하기 위한 준비를 하였다. 이번 글에서는 간단하게 웹페이지를 만들어보려고 한다. 장고의 MVT 패턴 스트링 MVC 패턴에 익숙하다면 처음에 장고의 MVT 패턴이 약간 혼동스러울 수 있다. 장고는 Model-View-Template 패턴인데 장고의 View가 컨트롤러 역할을 한다고 생각하면 된다. Model은 데이터베이스에 저장되는 데이터, Template은 화면에 보여지는 부분을 담당한다. 웹 클라이언트로부터 요청이 들어오면 URLconf가 요청이 들어온 url에 대한 처리를 결정한다. 이 결정으로 어떤 View가 처리를 하면 될지 정해지고 해당 View를 호출한다. View는 해당 내용을 처리하도록 정의한 로직에 따라 데이터를 처리한다. 이때 데이터베이스 처리가 필요하다면 Mo..
- Total
- Today
- Yesterday
- LOD
- 스프링부트
- 사이퍼
- cypher
- networkx
- rdfox
- 타임리프
- neosemantics
- Knowledge Graph
- pyvis
- RDF
- TopBraid Composer
- property graph
- RDF 변환
- Linked Data
- sparql
- 트리플 변환
- TBC
- 온톨로지
- 트리플
- Thymeleaf
- 그래프 데이터베이스
- TDB
- stardog
- 장고
- 지식 그래프
- Neo4j
- Ontology
- 지식그래프
- django
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |