본문 바로가기

인터페이스 개발115

Django - 콘텐츠 편집 기능 - Blog 실전 프로그램 개발 - 콘텐츠 편집 기능 - (Blog) 애플리케이션 설계하기 모델 설계 Post 모델 클래스 Blog URL 설계 작업 순서 개발 코딩하기 blog/models.py from django.db import models from django.urls import reverse from taggit.managers import TaggableManager from django.contrib.auth.models import User from django.utils.text import slugify class Post(models.Model): title = models.CharField(verbose_name='TITLE', max_length=50) slug = model.. 2020. 10. 7.
Django - 콘텐츠 편집 기능 - Bookmark 실전 프로그램 개발 - 콘텐츠 편집 기능 - (Bookmark) 애플리케이션 설계하기 모델 설계 Bookmark 모델 클래스 Bookmark URL 설계 개발 코딩하기 bookmark/models.py from django.db import models from django.contrib.auth.models import User class Bookmark(models.Model): title = models.CharField('TITLE', max_length=100, blank=True) url = models.URLField('URL', unique=True) owner = models.ForeignKey(User, on_delete=models.CASCADE, blan.. 2020. 10. 7.
Django - 인증 기능 실전 프로그램 개발 - 인증 기능 - 애플리케이션 설계하기 인증 기능 django에서 기본 앱으로 제공 django.contrib.auth 앱 관련 모델과 뷰가 제공됨 기본 제공 뷰를 이용하는 경우 템플릿만 정의 mysite/settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', : ] 화면 설계 django 제공 User 모델 url.. 2020. 10. 7.
Django - [Blog 앱 확장] 검색 기능 Blog 앱 확장 - 검색 기능 - 애플리케이션 설계하기 화면 구성 URL 설계 작업 절차 개발 코딩하기 blog/forms.py from django import forms class PostSearchForm(forms.Form): search_word = forms.CharField(label='Search Word') html로 구성 안하고 여기에 form 관련 내용 집어 넣음 blog/views.py : from django.views.generic import FormView from django.db.models import Q from django.shortcuts import render from blog.forms import PostSearchForm : #--- For.. 2020. 10. 7.
Django - [Blog 앱 확장] Tag 달기 Blog 앱 확장 - Tag 달기 - 애플리케이션 설계하기 화면 설계 테이블 설계 Post 모델 클래스 URL 설계 작업절차 개발 코딩하기 태깅 지원 패키지 설치 $ pip install django-taggit django-taggit-templatetags2 또는 $ conda install django-taggit django-taggit-templatetags2 mysite/settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.con.. 2020. 10. 7.
Django - Bookmark 앱, Blog 앱 개선 기존 앱 개선하기 - Bookmark 앱, Blog 앱 - 기존 앱 개선 설계하기 Bookmark Blog 작업 절차 개발 코딩하기 bookmark/templates/bookmark/bookmark_list.html {% extends "base.html" %} {% block title %}bookmark_list.html{% endblock %} {% block content %} Bookmark List {% for bookmark in object_list %} {{ bookmark }} {% endfor %} {% endblock %} bookmark/templates/bookmark/bookmark_detail.html {% extends "base.html" %} {% block title .. 2020. 10. 7.
Django - 첫 페이지 만들기 프로젝트 첫 페이지 만들기 첫 페이지 만들기 레이아웃 기반 페이지 만들기 공통으로 사용되는 요소를 레이아웃 템플릿으로 정의 헤더 메뉴 내용 풋터 개별 페이지는 레이아웃에서 필요한 부분만 재정의 레이아웃 페이지를 상속 템플릿 블록을 재정의 첫 페이지 작업순서 mysite/views.py from django.views.generic import TemplateView # TemplateView class HomeView(TemplateView): template_name = 'home.html' mysite/settings.py TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates'.. 2020. 10. 7.
Django - Blog 앱 개발 실전 프로그램 개발 - Blog 앱 bookmark 앱 URLConf 조정 라우팅의 분리 – urls 모듈 분리 애플리케이션 마다 자체 urls 모듈 운영 mysite/urls.py에서 모듈 단위로 라우팅 연결 bookmark/urls.py from django.urls import path from bookmark.views import BookmarkLV, BookmarkDV app_name = 'bookmark' # 해당 애플리케이션의 네임스페이스명 urlpatterns = [ path('', BookmarkLV.as_view(), name='index'), path('/', BookmarkDV.as_view(), name='detai.. 2020. 10. 7.
Django - Bookmark 앱 개발 실전 프로그램 개발 - Bookmark 앱 Bookmark 앱 작업 순서 프로젝트 뼈대 만들기 프로젝트 및 앱 개발에 필요한 디렉토리와 파일 생성 모델 코딩하기 테이블 관련 사항 개발 models.py, admin.py URLconf 코딩하기 URL 및 뷰 매핑 관계 정의 urls.py 뷰 코딩하기 애플리케이션 로직 개발 views.py 템플릿 코딩하기 화면 UI 개발 templates/ 디렉토리 하위의 html 파일들 settings.py 주요 사항 프로젝트 설정 파일 필수 항목 데이터베이스 설정 애플리케이션 등록 템플릿(TEMPLATES) 항목 설정 정적 파일 항목(STATIC_URL) 설정 타임존 지정 등 화면 UI 테이블 설계 Bookmark 모델 클래스 로직 설계 처리 흐름을 설계 로직 : UR.. 2020. 10. 7.
Django - Django 프로젝트 만들기 Django 프로젝트 만들기 HeidiSQL > root로 진행 데이터베이스 만들기 django_ex_db 만들기 MariaDB [mysql]> create database django_ex_db; MariaDB [mysql]> show databases; 사용자 계정 만들기/권한 부여 MariaDB [mysql]> create user 'webuser'@'%' identified by '1234'; MariaDB [mysql]> grant all privileges on django_ex_db.* to 'webuser'@'%'; Django 프로젝트 만들기 PyCharm 프로젝트 생성 프로젝트명 webapp1 패키지 설치 (weba.. 2020. 10. 7.
Django - HTTP 프로토콜 HTTP 프로토콜 HTTP 클라이언트와 서버 Http 프로토콜 주요 특징 문자 기반 프로토콜 디폴트로 80 포트 사용 클라이언트가 서버로 요청을 보내면 서버는 요청 내용을 클라이언트로 응답 후 접속 해제 서버 측에서 접속에 대한 상태 유지 하지 않음 : stateless 이후 접속 시에 누구인지, 이젂에 어떤 작업을 했는지에 대한 상태 정보 없음 HTTP Request : 요청 요청 라인(Request Line) HTTP 메서드 방식 및 요청 URL과 프로토콜 정보 요청 헤더(Request Header) 웹 브라우저 정보, 언어, 인코딩 방식, 요청 서버 정보 등 추가 정보 요청 본체(Request Body) 요청에 필요한 내용 HTTP Response : 응답 상태 라인 응답 상태 코드 및 프로토콜 정.. 2020. 10. 7.
Javascript - 클래스 for ES6 클래스 for ES 6 class 정의 class 키워드 객체의 원형을 정의하는 키워드 ES6(ES2015)에서 추가 class 클래스명 { } 생성자 constructor() 함수로 정의 this 객체가 새로 생성됨 매개변수 지정 가능 class 클래스명 { constructor([매개변수]) { // this.를 이용하여 객체의 프로퍼티 정의 } } student.js // student class Student { constructor(name) { // 생성자를 constructor() 함수로 정의 this.name = name; } } var s1 = new Student("홍길동"); console.log(s1.name); 홍길동 프로토타입 메서드 class 블럭안에 정의되는 함수 functi.. 2020. 9. 21.