PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(4)

간만에 작성하는 포스팅 입니다! 계속 여유 시간이 잘 나지 않아서 계속 포스팅이 늦어만 지네요…ㅠㅠ 그래서 한 포스팅에 들어가는 양을 줄이고, 조금 자주 올릴까… 란 생각도 드네요. 그래서 오늘 주제를 한번 볼까요?

– 내용 정리 하기

달랑 하나 뿐이지만….. 바로 시작해 볼까요?

정리하기

다시 오랜만에 하는 개발이니…. 정리부터 하고 시작해 보겠습니다. 저희가 만드는 board 프로젝트의 URL 부터 정리해 볼까요?

/admin – Django 가 제공하는 admin 사이트 입니다. 이는 board 프로젝트 폴더 내에 urls.py 파일에 정의되어져 있습니다.
/board – 저희가 작업하고 있는 실제 내용들이 있는 곳 입니다. post_service 앱 안에 있는 urls.py 파일을 포함 시키고 있죠./board/ – post_service 앱 안에 있는 urls.py 에 정의되어 있으며, post_list 라는 함수 기반 View 에 연결되어져 있습니다. post_list.html 파일을 템플릿으로 사용하고 있습니다.
/board/login/ – post_service 앱 안에 있는 urls.py 에 정의되어 있으며, login 라는 함수 기반 View 에 연결되어져 있습니다. login_form.html 파일을 템플릿으로 사용하고 있습니다.
/board/login/validate/ – post_service 앱 안에 있는 urls.py 에 정의되어 있으며, login_validate 라는 함수 기반 View 에 연결되어져 있습니다. 로그인 인증을 처리하고 리다이렉트 하는 기능을 수행합니다.

즉, 다시 정리하면 아래의 총 5가지 URL을 가지고 있다는 말과 같습니다.

/admin
/board
/board/
/board/login/
/board/login/validate/

오늘은 회원 가입 기능을 만들려고 합니다. 저는 2개의 URL을 추가로 만들 예정이고, 이는 다음과 같습니다.

/user/join/ – 사용자가 가입(join) 하는 것을 의미하고자 합니다.
/user/join/validate/ – 사용자 가입에 대한 검증(Validation) 절차를 의미하고자 합니다.

그리고, 위 의미와 같게 하기 위해 기존의 URL도 조금 고치려고 합니다.

/board/login/  ▶ /user/login/
/board/login/validate/  ▶ /user/login/validate/

그리고 이 의미를 명확히 하기 위해, 저는 새로운 앱을 하나 만들어서 진행할 것이고, 이 앱의 이름은 user_manager 라고 이름 지으려고 합니다. 자, 그럼 방금 한 이야기 대로 한번 진행해 볼까요?

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

새 앱 만들기

Django 에서 App 은 ‘프로젝트에서 관리되고 수행되는 기능의 묶음’ 이라고 정의하고 있습니다. 다시 말해, 기능 단위로 묶여진 하나의 그룹 또는 이름이라고 보시면 됩니다. 저는 하나의 ‘서비스’ 단위로 앱을 구분하고, 이를 펼치는 편 입니다. 활용 방법은 무궁무진하니, 편한 방법으로 사용하시면 되며, 일단 앱을 하나 만들어 봅시다. 위에서 잠시 이야기 한대로, 저는 user_manager 라는 앱을 만들어서 기능을 분리 시키려고 합니다. Django 에서는 새로운 앱을 만드는 명령으로 startapp 이라는 명령을 사용 합니다.

python manage.py startapp [앱 이름]

위 가 공식 방법이고, 이 포스팅은 PyCharm을 참고해서 사용하니 아래와 같이 Ctrl + Alt + R 버튼을 눌러서 명령을 내려 봅시다.

Ctrl + Alt + R 을 누른 모습!
이렇게 말이죠.
그리고 이름을 입력해 줍니다.
이렇게 앱 이름을 적어 줍시다. 콘솔 창에서 하신다면, python manage.py startapp user_manager 또는 django-admin manage.py startapp user_manager 라 입력합니다.
post_service와 user_manager 앱이 각각 만들어 졌습니다.
user_manager 앱이 생성된 것을 볼 수 있습니다.

이제 해야 할 일은 settings.py 에 INSTALLED_APP 을 수정하는 일이 첫 번째이고, 그 다음이 URL을 변경하는 작업 입니다. 먼저 settings.py 파일을 열어 봅시다.

INSTALLED_APP 에 앱을 추가한 모습
이렇게 새로 만든 앱을 추가해 줍시다.

그리고 이제, board 프로젝트의 urls.py 파일을 수정하여 봅시다.

url 을 생성 했습니다.
이렇게 말이죠. 위의 내용을 복사하고 / 앱 명만 바꿔줬습니다. 하지만 user_manager.py 에는 urls.py 파일이 없으니, 만들어줘야 합니다.
내용 복사 후 정리
post_service 에 있던 urls.py 내용을 복사하고, 필요 없는 post_list 내용을 버리고 정리했습니다.
views.py 내용
같은 방법으로, views.py 도 필요한 내용을 복사하였고,
추려진 내용
post_service 의 views.py 에서는 필요 없어진 내용을 추렸습니다.
간소화 된 내용
그리고 post_service 의 urls.py 는 더 간소화 되었구요.
user/login/ 이 정상 적인지 확인!
이렇게 변경된 URL 이 정상 작동하는 것을,
board/ 도 작동 확인!
확인할 수 있습니다.

마치며…

한 포스팅이 너무 길어지는 경향이 짙고, 너무 많은 내용을 담다 보니 소실되는 내용도 많고 / 짧아지는 설명도 많다는 걸 느꼈습니다. 조금 포스팅 내용들을 정리하고, 어떤 순서로 진행할지는 계속 고민해 봐야 겠지만… 양을 줄이고 / 질을 높이는 방향으로 생각하고 있습니다. 다음 포스팅에는 ‘회원 가입하기’ 에 대해서 알아 볼 것이고, 4월 4일 오후 쯤에 포스팅 하고자 합니다.

 

[출처] https://devissue.wordpress.com/2015/04/02/pycharm%ea%b3%bc-%ed%95%a8%ea%bb%98-django%ec%99%80-restframework%eb%a5%bc-%ed%99%9c%ec%9a%a9%ed%95%98%ec%97%ac-%ea%b0%84%eb%8b%a8%ed%95%9c-%ea%b2%8c%ec%8b%9c%ed%8c%90-%eb%a7%8c%eb%93%a4%ea%b8%b04/

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
27 IPython Notebook을 통한 데이터 분석 #2 file 졸리운_곰 2017.03.05 518
26 IPython Notebook을 통한 데이터 분석 #1 file 졸리운_곰 2017.03.05 686
25 ipython 기본 사용법 졸리운_곰 2017.03.05 563
24 IPython Tutorial 사용법 file 졸리운_곰 2017.03.05 1118
23 python / itertools — Functions creating iterators for efficient looping 졸리운_곰 2017.03.04 701
22 python / List Comprehension file 졸리운_곰 2017.03.04 453
21 Python List Comprehensions: Explained Visually file 졸리운_곰 2017.03.04 493
20 Python: List Comprehensions 졸리운_곰 2017.03.04 449
19 파이썬 코딩 컨벤션 PEP 졸리운_곰 2017.03.04 681
18 Windows 64 bit 에서 Python 단일 EXE 파일 만들기 file 졸리운_곰 2017.02.26 975
17 Python의 Generator와 yield 키워드 졸리운_곰 2017.02.16 415
16 Anaconda 설치하기 - Python을 제대로 활용해보자 졸리운_곰 2016.12.12 831
15 virtualenv를 사용하자 - 가상 개발환경 구축하기 졸리운_곰 2016.11.13 503
14 파이썬으로 개발된 놀라운 라이브러리들! 파이썬 만세! file 졸리운_곰 2016.08.10 7038
13 윈도우에서 파이썬 설치하기 (virtualenv, pip 사용법) file 졸리운_곰 2016.08.08 1080
12 [Python] 파이썬 실행환경의 독립 virtualenv & PyCharm file 졸리운_곰 2016.08.08 791
11 Python virtualenv 사용법(MAC기준,pip사용) file 졸리운_곰 2016.08.08 456
10 virtualenv를 사용하자 - 가상 개발환경 구축하기 졸리운_곰 2016.08.08 460
9 윈도우에서 easy_install, pip 사용하기. 졸리운_곰 2015.11.24 1450
8 윈도우에서 파이썬 설치하기 (virtualenv, pip 사용법) file 졸리운_곰 2015.11.24 707
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED