와챠의 우당탕탕 코딩 일기장

[안드로이드]Python(Django) <=> MySQL <=> Json(1) 본문

코딩 일기장/Android(Kotlin)

[안드로이드]Python(Django) <=> MySQL <=> Json(1)

minWachya 2021. 5. 1. 15:33
반응형

목차

  • 1) 파이썬 설치 확인
  • 2) Django에 필요한 모듈 설치
  • 3) Django 프로젝트 생성
  • 4) 이 프로젝트에서 실행하는 앱 만들기
  • 5) 파이썬 파일 수정
  • 6) Django와 mySQL 연동
  • 7) 모델 생성
  • 8) (프로젝트 이름) > (앱 이름)에 파일 추가하기
  • 9) 데이터 추가하기
  • 10) 데이터를 Json 형으로 변환

1) 파이썬 설치 확인

파일 탐색기에서 프로젝트 저장할 파일 만들고 경로창에 cmd입력

python --version으로 파이썬 설치와 버전 확인


2) Django에 필요한 모듈 설치

  • pip install django
  • pip install djangorestframework
  • pip install markdown
  • pip install django-filter
더보기

... 오류뜬 줄 알았는데 이대로 해도 실행은 잘 됨

그냥 뭔가를 무시하고 ...설치한 거 같음

 


3) Django 프로젝트 생성

django-admin startproject (프로젝트 이름)

 

잘 생성됐나 확인

dir

(프로젝트 이름) 디렉터리 확인!

cd (프로젝트 이름) 으로 프로젝트로 이동

 

dir로 프로젝트 내의 (프로젝트 이름)과 동일한 디렉터리 확인


4) 이 프로젝트에서 실행하는 앱 만들기

python manage.py (앱 이름)

dir로 (앱 이름) 디렉터리 확인!

dir (앱 이름), dir (앱 프로젝트)

각 디렉터리의 기본 파일 확인!


5) 파이썬 파일 수정

 

5-1) 내 컴퓨터만 접근할 수 있도록 ALLOWED_HOSTS 설정하기

 

파이썬 IDLE 열고, File > open > 프로젝트 저장 디렉터리 > (프로젝트 이름) > (프로젝트 이름) > settings.py

노란 부분에 내 아이피 주소 입력(cmd에 ipconfig로 확인)

 

 

5-2) INSTALLED_APPS

'rest_framework',

'(앱 이름)' 추가

 

 

5-3) mySQL사용하기 위해 DATABASES

'USER':'root',

'PASSWORD':'',

'HOST':'localhost',

'PORT':'3306'

추가

(파이썬 포트 = 3306)

 

 

 

5-4) TIME_ZONE을 우리나라 기준으로 설정

TIME_ZOME='Asia/Seoul'

 


수정항 setting.py로 서버 설정 잘 됐는지 확인!

 

manage.py 파일 있는 폴더에서

python manage.py runserver 0.0.0.0:8000 입력

(장고 포트는 8000)

Starting development server 나오면 성공!

 

해당 커멘드 창은 서버를 구동하는 용도로 사용할 예정이니 닫으면 안 됨!!

 

웹브라우저에서 (내 ip주소):8000 입력하고 아래의 장고 홈페이지 뜨는지 확인

=> 장고 서버가 잘 구동되고 있다!


6) Django와 mySQL 연동

 

6-1) 장고 프로젝트 내용 반영시키기

 

python manage.py migrate 입력

 

6-2) 장고에 로그인하기 위한 superuser 계정 생성

 

manage.py 파일이 있는 폴더에서

새로운 cmd 창 열어서

python manage.py createsuperuser 입력

아이디, 이메일(임의), 비밀번호 입력

superuser 만들기 끝!


웹 브라우저에서

(내 ip주소):8000/admin 입력하면

장고에 로그인 할 수 있는 로그인 창이 뜬다.

 

6-3) 로그인 하기

 

로그인 성공하면 아래와 같은 화면이 끈다.

나는 다크모드라 화면이 다를 수도...


7) 모델 생성

7-1) models.py 수정

 

 (프로젝트 이름) > (앱 이름) > models.py

7-2) 생성된 모델을 장고 서버에 등록

 

(프로젝트 이름) > (앱 이름) > admin.py

7-3) 변경 사항 적용하기

 

python manage.py makemigrations

7-4) 반영하기

 

python manage.py migrate

 

(내 ip주소):8000/admin 다시 방문하면

아까 생성한 데이터 모델(Human infos)를 확인할 수 있다.


8) (프로젝트 이름) > (앱 이름)에 파일 추가하기

 

8-1) 데이터모델의 데이터와 json 형태로 1:1 매칭 시켜주는 작업

 

serializers.py

 

8-2) serializers의 클래스와 데이터 쿼리문 연결해주는 작업

 

(프로젝트 이름) > (앱 이름) > views.py

 

8-3) views 방분하려고하는 url 주소와 연결해주기

 

(프로젝트 이름) > (프로젝트 이름) > urls.py

 

8-4) (프로젝트 이름) > (앱 이름)urls.py 수정 (또는 생성)

 

장고 프로젝트에서 필요한 모든 파이썬 파일 수정은 끝이다...

 


9) 데이터 추가하기

(내 ip주소):8000 다시 방문!

그러면 다른 페이지가 나온다.

빨간 링크 클릭하면 아래 페이지가 보인다.

 

 

데이터를 넣어준다~

 

페이지 다시 방문하면 추가된 데이터가 보인다.


10) 데이터를 Json 형으로 변환

 

오른쪽 위쯤에 get이라는 버튼이 있는데

주어진 모델을 어떤 타입으로 획득할 것인지 정할 수 있다.

json 클릭

그러면 이런 json 형태의 데이터가 보여진다.


이제 전달할 데이터를 다 만들어서 모바일 앱에서 이 데이터를 가져와 활용하면 된다.

 

다음 포스트에서 계속

반응형
Comments