[Django] #2.로컬(Mac)에 환경 구축하기

Lynn·2020년 12월 1일
0

Django

목록 보기
3/7
post-thumbnail

1. XCode 설치

데이터구조 수업에서 XCode를 쓰고 있던 중이라 따로 설치는 필요하지 않았다.


2. homebrew 설치

터미널에 다음과 같이 입력해주면 설치가 바로 끝난다.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"


3. Python 3.6 설치

Mac에서는 아직도 파이썬 2가 기본 실행 환경으로 사용되고 있어서, 파이썬 3을 사용하려면 추가 설치가 필요하다고 한다. 하...이거 설정하느라 오후 다 지남
(참고) https://www.daleseo.com/python-pyenv/

잘못 꼬여가지고 몇 시간을 헤매다 드디어 버전 설정이 제대로 바뀌었다! 이제야 장고 설치 가능 ㅠ 또 안 되면 그냥 python 대신 python3, pip 대신 pip3 넣어보기...


4. Django 설치

4-1. pip로 virtualenv 설치

  • virtualenv : 파이썬 기반의 프레임워크나 라이브러리, 개발 환경마다 프로그램들의 버전이 꼬이는 것을 방지하기 위해 가상환경 분리

  • pip : 파이썬으로 작성된 패키지를 설치·관리하는 패키지 관리 시스템

    $ pip install virtualenv

4-2. 디렉토리 생성 후 virtualenv 환경 구성

  • 해당 디렉토리 내에서 명령어 실행

    $ virtualenv -p python3 [env name]

4-3. 가상환경 진입

  • 프로젝트에 모듈을 설치할 때나, 프로그램을 실행시킬 때에는 아래의 명령어로 가상환경 진입 후 실행해야 한다.

    $ source [env name]/bin/activate

4-4. Django 설치!

  • 정상적으로 가상환경에 진입되었다면 입력창 줄 왼쪽 끝에 ‘([env name])’ 글자가 추가된 것을 확인할 수 있다.

    ([env name]) $ pip install django


5. Django 웹 프로젝트 만들기

  • 프레임워크를 설치했으니, 실제 웹 서비스를 띄울 웹 프로젝트 기본 코드들을 생성해보자!
    ([env name]) $ django-admin startproject [proj name] .

    장고가 제대로 시작되면 디렉토리에 '[proj name]폴더'와 'manage.py'가 생성된다.

  • manage.py로 server를 띄우자!
    ([env name]) $ python manage.py runserver

    웹브라우저를 열어 'http://localhost:8000' 에 접속하면 아래와 같은 화면을 볼 수 있다.


6. Django 웹앱 만들기

터미널에서 프로젝트를 생성하고 가상환경을 설정한 후, 파이참으로 프로젝트를 Open해서 프로그래밍을 진행

웹 페이지를 띄우기 위한 하나의 모듈을 장고 앱이라고 한다.
하나의 장고 프로젝트는 여러 앱을 담을 수 있다.

앱 생성 명령어
([env name]) $ python manage.py startapp [app name]

앱 생성이 완료되면 위의 예시와 같이 디렉토리가 구성된다.

각 파일들의 역할

  • manage.py : 장고 앱을 관리하기 위한 각종 명령어를 내장하고 있는 스크립트 파일

  • firstdjango (프로젝트 폴더) : 하나의 웹 서비스는 하나의 프로젝트 폴더에 대응

    • settings.py : 프로젝트 전반에 걸친 각종 설정을 위한 파일
    • urls.py : 프로젝트를 실행시킬 때 어떤 웹앱의 페이지를 어떤 주소에 연결시킬지를 정의하는 파일
    • wsgi.py : 웹 사이트 실행 프로세스와 관련하여 사용되는 파일 (배포 관련)
  • first (웹 앱 폴더)

    • admin.py : 장고 관리자 웹을 구성하기 위해 필요한 파일
    • apps.py : 장고 웹앱에 대한 설정을 위한 파일
    • models.py : 데이터베이스에 정의하기 위한 모델들을 정의해두는 코드를 위한 파일
    • views.py : 웹 페이지나 웹 요청등을 처리하는 코드를 작성하는 파일
profile
wanderlust

0개의 댓글