Project/[장고&파이썬] 블로그 프로젝트

0. 블로그 프로젝트 기술 구상, 장고 기본환경 세팅

Ariella 2021. 8. 1. 03:00
반응형

 

블로그 프로젝트 기술 명세

 

 

기능 상세 기능 기능 설명 요구사항 
Post 글 등록 1. 등록 후 리스트 페이지로 이동
2. 등록 후 Data Base에 저장
1. views 함수
2. model 등록
3. forms.py 이용
  글 리스트(main) 1. DB의 모든 글 불러오기
2. View Detail 버튼을 통해 상세 페이지로 이동
3. 제목, 날짜만 보여주기
1. for문
2. detail html 생성, 버튼 링크 연결
  글 수정 1. detail html 에서 edit 버튼으로 edit 페이지로 이동
2. 글 수정 기능
 
  글 상세 각 id url로 객체 받아오기 모델 구성-title, pub_date, author, content
       
Photo  사진 등록 1. 등록 후 리스트 페이지로 이동
2. 등록 후 DB저장
 
  사진 리스트(main) 1. DB의 모든 사진 불러오기
2. 상세 페이지와 연결
3. 제목, 날짜만 보여주기
 
  사진 수정 1. 사진 상세 페이지에서 edit 버튼으로 edit 페이지로 이동
2. 사진, 글 수정 기능
 
  사진 상세 각 id url로 객체 받아오기  모델 구성-title, pub_date, description
       
Comment 댓글  1. 본 웹사이트에서의 회원가입, 로그인 없이 진행
2. 댓글 개수 글, 사진 상세 페이지에 띄우기
1. API 기능 활용

 

처음 구상할 당시에는 하나의 글쓰기 페이지에서 카테고리를 선택하고 이후 카테고리별로 글을 모아볼 수 있는 기능을 떠올렸으나 쿼리셋 필터 기능 등 쿼리셋에 대한 이해가 필요하여 먼저 각 카테고리별로 글 목록, 글 등록을 따로 구현하게 됨.

 

 


 

Django 기본환경 세팅

 

 

 

1. 프로젝트를 담을 폴더 (원하는 위치에)생성 후 VSCode에서 생성한 폴더 열기

 

 

 

2. vscode 에서 Terminal 열기 

 

Window의 경우, Terminal이 "bash"인지 확인, "cmd"로 되어 있다면,

"기본 셸 선택 - Git bash 선택 - Terminal 창 닫고 다시 열기" 를 수행하여 bash 로 설정해준다.

 

 

 

3. 터미널에서 가상환경 만들기

python -m venv myvenv
  • myvenv = 가상환경 이름

 

 

 

4. 가상환경 실행

# Window
source myvenv/Scripts/activate

# MacOS
source myvenv/bin/activate

 

 

 

5. 가상환경에 장고 설치하기

pip install django

 


 

Django Project & App 생성

 

 

 

6. django 프로젝트 생성하기

django-admin startproject blogproject
  • blogproject = 프로젝트 이름

 

 

 

7. django 프로젝트 폴더로 진입하기

cd blogproject

 

 

 

8. django 서버 구동 명령어

python manage.py runserver

서버를 끌 때는 터미널 창을 클릭하고 Ctrl + C 를 입력한다.

 

 

 

9. App 만들기

python manage.py startapp blog
  • blog = app 이름

 

 

 

10. settings.py 에서 app 생성을 알리기

settings.py 

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog.apps.BlogConfig', 
]

blogproject 폴더 안의 blogproject 폴더의 settings.py에서

INSTALLED_APPS 부분에 "앱이름.apps.대문자로앱이름Config" 형식으로 앱을 등록해준다.

 

 

 

 

 

 

반응형