Django당

(3) Django 인스타그램 피드화면 만들어보기 [설정]

이히당 2024. 1. 23. 00:30

Django는 프로젝트 안에서 앱 단위로 코드를 관리할 수 있다.

폴더는 하나의 앱으로 인식된다.
따라서 하나의 앱을 만들면, 하나의 폴더가 생긴다.

python manage.py startapp [app이름]

이렇게 앱을 만들면 된다.


앱단위로 관리하는 이유는 무엇일까?
여러 기능을 다루는 소스파일들이 있는데, 이 모든 파일을 한 곳에서 관리하면, 부피가 너무 커지게된다.
이를 분리하기 위해 앱단위로 나눠 관리한다.

분할작업도 편리해지고, 협업도 편리해진다.

 

templates밑에 폴더를 나누는 이유도 이런 이유다.


지난 글에서 만든, instagramProject는 프로젝트 생성할 때, 자동으로 만들어진 폴더다. 따라서 앱으로 인식되지 않는다.

2024.01.11 - [django] - (2) Django로 나만의 페이지를 만들어보자

 

(2) Django로 나만의 페이지를 만들어보자

2024.01.11 - [분류 전체보기] - (1) Django 개발환경을 세팅하자 (1) Django 개발환경을 세팅하자 인스타그램 클론코딩 Django : python기반 프레임워크 https://www.youtube.com/watch?v=M8UPyeF5DfM&t=3497s 기대사항 어떻

2hiidevdang.tistory.com


다른 앱을 생성하고 싶다면 아래 명령어를 실행한다.

(venv) PS C:\Users\leath\PycharmProjects\instagramProject> python manage.py startapp [app이름]

단순히 폴더를 만든다고 앱이라고 인식되는 것이 아니다. 앱이라고 취급되려면 settings.py에서 추가해야 한다.


# Application definition  

INSTALLED_APPS = [  
    'django.contrib.admin',  
    'django.contrib.auth',  
    'django.contrib.contenttypes',  
    'django.contrib.sessions',  
    'django.contrib.messages',  
    'django.contrib.staticfiles',  
    'content',  
    'user',  
    'instagramProject'  # 추가
]

이렇게 수정해주면 된다. 그럼 자동으로 migration된다.
(안해주면 DB작업 시 문제가 생길 수 있다.)
(추가 INSTALLED_APPS에 추가해줄 때, ,를 잘 찍어주자..)

 

참고로, 앱을 먼저 생성하고, 리스트에 추가해야한다.


기본적인 앱을 위한 설정을 마쳤으니, 이제는 bootstrap을 통해 웹페이지를 제작해보자.

여기부터는 완전 웹표준 내용이라 블로그 글을 참고했다.
예전에 주구장창하기도 했고, 장고 공부가 주목적이라 이 부분은 넘겼다.
https://cholol.tistory.com/548

 

Django:제로부터 시작하는 인스타그램 만들기 - clone instagram #2

2021.09.15 - [Study/python] - Django:제로부터 시작하는 인스타그램 만들기 - clone instagram 목차 바디 영역 만들기 지난 포스팅에 이어 이제 가운데 영역을 좀 꾸며보겠습니다. 일단 인스타그램을 보면 왼

cholol.tistory.com

 

728x90