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/

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
77 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(7) file 졸리운_곰 2016.08.04 414
76 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(6) file 졸리운_곰 2016.08.04 488
75 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(5) file 졸리운_곰 2016.08.04 603
» PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(4) file 졸리운_곰 2016.08.04 534
73 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(3) file 졸리운_곰 2016.08.04 495
72 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(2) file 졸리운_곰 2016.08.04 1680
71 PyCharm과 함께 DJango와 RestFramework를 활용하여 간단한 게시판 만들기(1) file 졸리운_곰 2016.08.04 2173
70 PyCharm과 함께 DJango와 RestFramework를 활용하여 REST API 만들기 file 졸리운_곰 2016.08.04 767
69 괜찮은 Django Rest Framework 강좌를 찾아서 소개합니다 졸리운_곰 2016.08.04 1106
68 PyCharm과 함께 DJango와 RestFramework를 활용한 웹 사이트 구축하기 file 졸리운_곰 2016.08.04 623
67 Python + Flask - 신원확인을 시켜주자(Database 연동). file 졸리운_곰 2016.08.04 648
66 Python + Flask - 사용자와 대화하는 방법(Database 연동). file 졸리운_곰 2016.08.04 2001
65 Python + Flask - 사용자와 대화하는 방법. file 졸리운_곰 2016.08.04 1143
64 Python + Flask - 웹서비스를 시작하다. 졸리운_곰 2016.08.04 687
63 Designing a RESTful API with Python and Flask 졸리운_곰 2016.08.03 616
62 Django에서 간단한 REST API 만들기 file 졸리운_곰 2016.08.03 486
61 HTML Scraping [파이썬 웹 스크래핑 간단 메뉴얼] 졸리운_곰 2016.07.30 766
60 Flask AngularJS app powered by RESTful API – Setting Up the Application file 졸리운_곰 2016.07.21 290
59 Flask by Example - Integrating Flask and Angular 졸리운_곰 2016.07.21 742
58 SQLAlchemy 시작하기 졸리운_곰 2016.06.11 948
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED