안녕하세요 cocy입니다.
요즘 핫한 파이썬 장고를 학습하면서 정리할겸 오랜만에 포스팅을 해보려합니다.
이 포스팅은 기본적으로 메인 개발 언어를 가지고 있고,
소스관리 툴(GIT)을 사용해 본 적이 있으며,
어느정도 DB를 다룰 수 있고,
MVC 패턴에 익숙하다면 이해할 수 있을 정도로 작성될 예정입니다.(제기준)
개발 환경은 아래와 같습니다.
Python3
Django2
IDE : Intellij
OS : Mac
포스팅에 참고한 레퍼런스는 아래 URL입니다.
https://tutorial.djangogirls.org/ko/
기본적인 환경 셋팅은 레퍼런스 주소에 잘 나와있기때문에
Mac 환경에 설치하는 방법 위주로 적겠습니다.(제위주)
프로젝트를 생성할 폴더를 만들고 모든 작업은 그 폴더 안을 기준으로 합니다.
폴더 이름은 board로 하겠습니다.
파이썬을 설치하고 아래의 명령어를 실행합니다.
$ virtualenv --python=python3.6 myvenv
가상환경을 만드는 명령어입니다.
이후 가상환경을 활성화 합니다.
$ source myvenv/bin/activate
그리고 장고를 설치해줍니다.
(myvenv) $ pip install django
board폴더 안에서 프로젝트의 뼈대가되는 mysite를 생성해줍니다.
(myvenv) $ django-admin startproject mysite .
mysite는 프로젝트의 뼈대가 되는 파일들이 생성됩니다. (manage.py)
그다음으로 생성된 프로젝트 폴더 안에서 아래 명령어를 실행합니다.
python manage.py migrate
이후 프로젝트를 서버로 구동 해봅니다.
(myvenv) $ python manage.py runserver
(myvenv) $ python manage.py startapp notice
mysite/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'notice',
]
from django.db import models
from django.utils import timezone
class Article(models.Model):
author = models.ForeignKey('auth.User', on_delete=models.CASCADE,)
title = models.CharField(max_length=200)
text = models.TextField()
created_date = models.DateTimeField(
default=timezone.now)
published_date = models.DateTimeField(
blank=True, null=True)
def publish(self):
self.published_date = timezone.now()
self.save()
def __str__(self):
return self.title
(myvenv) $ python manage.py makemigrations notice
(myvenv) $ python manage.py migrate notice
LANGUAGE_CODE = 'en-us'
를 LANGUAGE_CODE = 'ko'
로 바꾸세요.from django.contrib import admin
from .models import Article
admin.site.register(Article)
(mvenv) $ python manage.py createsuperuser
마지막으로 서버를 재구동하여 확인해봅니다. 관리자 화면은 /admin 입니다.
http://127.0.0.1:8000/admin
수고하셨습니다.
본 포스팅에서 사용된 명령어를 정리하면 다음과 같습니다.
Python(Django) 명령어
https://docs.djangoproject.com/en/2.0/ref/django-admin/
======================== 항시 사용===========================
가상환경사용
source /User/cocy/myvenv/bin/activate
서버 구동
python manage.py runserver
========================프로젝트 생성시만 사용=================
<projectname> django-admin startproject mysite .
python manage.py migrate
=========================모델 생성시 사용=====================
앱 생성
python manage.py startapp <appname>
앱에서 생성된 모델 반영
python manage.py makemigrations <appname>
python manage.py migrate <appname>
'Lecture > Python' 카테고리의 다른 글
[django] 본격 장고 웹소켓 (0) | 2018.01.25 |
---|