본문 바로가기
공부/djagno

장고 공부

by 매일삼겹살 2021. 8. 17.
반응형


1. django-admin startproject mysite

이 명령은 현재 디렉토리에서 mysite라는 디렉토리를 생성할 것입니다. 만약 이 명령이 동작하지 않는다면, django-admin을 실행하는 데 문제가 있습니다.를 확인하세요.


2. python manage.py startapp users //manage.py가 있는 디렉토리에서 사용

Django에서 당신이 작성하는 각 어플리케이션들은 다음과 같은 관례로 Python 패키지가 구성됩니다. Django 는 앱(app) 의 기본 디렉토리 구조를 자동으로 생성할 수 있는 도구를 제공하기 때문에, 코드에만 더욱 집중할 수 있습니다.

앱을 만들었으면

처음 만들었던 mysite의 settings에서 INSTALLED_APPS 에 아래처럼 app을 추가해 줘야 한다.

그래야 사용이 가능

#settings.py
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'users',
]

 

Hello World 띄우기

#views.py
from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.
def hello_world(request): #이 주소로 request 요청이 오면 헬로 월드가 나옴
    return HttpResponse('Hello world')
#urls.py
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('users/', include('users.urls')),
]

인크루드는 users 앱에서 urls를 만들어서 분기를 하게 하는 거 같다.

그래서 users app에서 urls.py를 만들어 준다.

 

#userapp -> urls.py

from django.urls import path
from users.views import hello_world

app_name = 'userapp' 
#userapp이라는 명시함으로서 user/hello_world 
#user:hello_world 약간 간편해 지게 쓸 수 있음

urlpatterns = [
    path('hello_world/', hello_world, name='hello_world')
]

 

에러가 뜰텐데

http://127.0.0.1:8000/users/hello_world/

여기로 가니 에러가 뜨지 않고 헬로 월드가 잘 출력된다.

 

 

 

728x90

'공부 > djagno' 카테고리의 다른 글

장고 템플릿 공부중..  (0) 2021.08.18
Django-environ  (0) 2021.08.17

댓글