220 likes | 533 Views
2011 Django Seminar #2 KAIST 09 학번 차동훈 ( Snogar ). D jango 를 소개합니다. 저번 시간엔 뭘 했더라 ?. 웹 개발을 위한 기초 Python If For List Tuple Function 이제는 Django 를 본격적으로 배워보자 !. MVC / MVT 패턴. MVC ? Model ( 데이터 ) View ( 사용자 인터페이스 ) Controller ( 데이터를 처리하는 로직 ) MVT ? Model ( 데이터 )
E N D
2011 Django Seminar #2 KAIST 09학번 차동훈 ( Snogar ) Django를 소개합니다
저번 시간엔 뭘 했더라? • 웹 개발을 위한 기초 Python • If • For • List • Tuple • Function • 이제는 Django를 본격적으로 배워보자!
MVC / MVT 패턴 • MVC ? • Model ( 데이터 ) • View ( 사용자 인터페이스 ) • Controller ( 데이터를 처리하는 로직) • MVT ? • Model ( 데이터 ) • Views ( 데이터를 처리하는 로직) • Template ( 사용자 인터페이스 )
MVC / MVT 패턴 • Model / View / Controller User Request Model Controller View
MVC / MVT 패턴 • Model / Views / Template User Request Model Views Template
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
1. User가 어떤 주소로 접속한다. • http://143.248.234.158:8000/로 접근 • http://143.248.234.158:8000/login/로 접근 • http://143.248.234.158:8000/register/로 접근 • 세 가지 경우에 대해 다루어 보자
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
2. Urls.py 에서 맞는 주소를 찾는다. • ^ : 시작, $ : 끝, r : raw string • r’^$’ : 링크 뒤에 아무것도 붙지 않은 것 • http://143.248.234.158:8000/ • r’^login/$’ : 링크 뒤에login/ 이 붙은 것 • http://143.248.234.158:8000/login/ • r’^register/$’ : 링크 뒤에 register/ 이 붙은 것 • http://143.248.234.158:8000/register/
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
3. 그 주소에 해당하는 Views.py의 Method를 호출한다. • main_pagemethod • ‘django.contrib.auth.views.login’ • Django가 제공하는 로그인 뷰 • register_page method
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
4. Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • main_page
4. Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • main_page • 앞의 coment, lecture, score 는 이런 Comment를 작성하고 보내면 그 값을 받아오는 역할을 한다
4. Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • register_page • Template
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
5. 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • main_page • Lecture 와 Comment는 DB에 저장되어 있는 값들 • Models.py 의 DB구조와 연동
5. 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • register_page • User는 Django가 제공하는 Model • 이렇듯 View에서 DB를 자유롭게 읽고 쓸 수 있다
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
6.처리한 것을 이용하여 동적 페이지를 작성해 반환한다. • main_page • 다른 Template으로 값과 함께 전송 • 혹은 그냥 다른 페이지를 링크 • register_page • 마찬가지!
MVC / MVT 패턴 • User가 어떤 주소로 접속한다. • Urls.py 에서 맞는 주소를 찾는다. • 그 주소에 해당하는 Views.py의Method를 호출한다. • Template에서 넘긴 정보와 주소에서 넘긴 정보를 이용하여 처리한다. • 이 과정에서 데이터베이스를 이용하여 처리할 수 있다. • 처리한 것을 이용하여 동적 페이지를 작성해 반환한다.
이번 과제는 없습니다! • 대신 완전 이해할 때 까지 세미나를 보고, 또 보고, 선배들에게 물어보고 합시다 • 수고하셨습니다!