02.-3 앱 생성

조재훈·2022년 7월 15일
0

Clone_Airbnb

목록 보기
5/31
post-thumbnail

이제 앱을 생성해보자.
콘솔에서 아래와 같이 입력한다.

django-admin startapp rooms

이때 주의할 것은 앱 이름은 반드시 복수(plural)형으로 짓는다. room이 아닌 rooms
아래와 같이 폴더와 파일들이 생성된다.

그리고 다른 앱들도 생성해준다

django-admin startapp users
django-admin startapp reviews
django-admin startapp conversations
django-admin startapp lists
django-admin startapp reservations

저번에 db를 한번 날려버렸으므로 superuser를 다시 생성하자.

python manage.py createsuperuser

서버를 다시 실행한다.

python manage.py runserver

admin 페이지에 들어가보면 이미 Users 가 생성되어있다.

그런데 이미 users가 있는데 굳이 새로 users를 생성한 이유가 무엇인가?
여기에 있는 users는 Django admin에 있는 기능이다. 전체 서버와 데이터베이스를 관리하는 users 기능이기 때문에 관리자 외의 외부인이 접근해서는 안된다. 일반 유저가 여기에 접근해서는 안되기 때문에 별도로 관리하는 users를 새로 생성한 것이다. 여기서는 카카오, 페북, 구글 등으로 로그인하는 유저들도 관리할 수 있다.

생성된 앱들을 보면 아래와 같은 파일들이 있다.

1) admin.py

  • 여기에 입력되는 코드들은 admin 패널에 반영된다.

2) apps.py

  • Configuration 파일
  • 당장은 크게 중요하지 않다.

3) models.py

  • 우리가 원하는 데이터베이스가 어떻게 생겼는지 설명해주는 파일

4) tests.py

  • 말 그대로 테스트하는 파일

5) views.py

  • 사용자들이 보게 될 내용들
  • html을 render하는 함수 추가
  • form 보여주거나 upload하고 view가 없는 것들을 처리

6)* urls.py

  • 당장 앱에 생성되어있진 않고 config 폴더에 있다.
  • 웹사이트의 URL을 제어함
  • 또다른 url을 만들고 싶은 경우 urlpatterns에 path를 추가
  • app마다 세부 url들이 난립하게 되는데 이걸 전부 config에서 제어하는것은 어려우니 각 app 내부에 urls.py를 생성하여 제어할 예정

DIVIDE AND CONQUER

users에 urls.py를 생성하자

profile
맨땅에 헤딩. 인생은 실전.

0개의 댓글