Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명

Y2J
풀어 주다: 2017-05-11 11:08:23
원래의
2809명이 탐색했습니다.

이 글은 주로 Python 웹 프레임워크 Django 프로젝트를 구축하는 전체 과정을 소개합니다. 편집자는 꽤 좋다고 생각해서 지금 공유하고 참고용으로 제공하겠습니다. 편집기를 따라 살펴보겠습니다

Python 웹 프레임워크 Django 프로젝트를 구축하는 전체 과정

IDE 설명:

  1. Win7 시스템

  2. Python: 3.5

  3. Django: 1.10

  4. Pymysql: 0.7.10

  5. Mysql:5.5

참고: pip 동결을 통해 설치된 라이브러리의 버전 정보를 볼 수 있습니다.

Django는 Python으로 개발된 무료 오픈 소스 웹사이트 프레임워크로, 고성능의 우아한 웹사이트를 빠르게 구축하는 데 사용할 수 있습니다!

Django 기능

  1. 강력한 데이터베이스 기능

  2. Python 클래스 사용 상속 , 단 몇 줄의 코드만으로 풍부하고 동적인 데이터베이스 작업 인터페이스 (API)를 가질 수 있으며 다음과 같은 경우 SQL을 실행할 수도 있습니다. 필요한 진술.

  3. 강력한 백엔드 기능 내장

  4. 간단한 코드 몇 줄로 웹사이트를 쉽게 관리할 수 있는 강력한 백엔드를 제공합니다. 콘텐츠! 우아한 URL

  5. 은 정규식과 일치하는 URL을 해당 함수 에 전달합니다.

  6. 템플릿 시스템 – 심플한 디자인의 강력하고 확장이 쉬운 템플릿 시스템입니다. 코드와 스타일이 별도로 설계되어 관리가 더 쉽습니다.

  7. 캐싱 시스템 – 더 나은 성능과 더 빠른 로딩 속도를 위해 memcached 또는 기타 캐싱 시스템과 함께 사용하세요.

  8. 국제화 – 다국어 애플리케이션을 완벽하게 지원하여 번역된 문자를 정의하고 다른 국가의 언어로 쉽게 번역할 수 있습니다.

Python 및 MySQL의 설치 작업은 여기서 설명하지 않습니다. 인터넷에서 찾아서 해결할 수 있습니다. 그 중 django와 pymysql의 설치는 pip install * 명령어를 이용하여 완료할 수 있다.

Django를 설치한 후 django-admin.py 관리 도구를 사용하여 프로젝트를 생성할 수 있습니다. 먼저 django-admin.py의 명령어 소개를 살펴보겠습니다. 명령줄에 django-admin.py를 입력하면 사용 가능한 프로젝트 관리 명령어를 확인할 수 있습니다.

Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명

Django 프로젝트에서 HelloWorld 프로젝트를 생성하는 구체적인 과정은 다음과 같습니다.

1단계: Django를 빌드하기 전 프로젝트를 실행하려면 먼저 프로젝트 Storage 디렉터리를 선택하세요. 그런 다음 CD는 Dos 창에서 프로젝트 저장 디렉터리로 전환합니다.

Step2: 프로젝트 생성 django-admin.py startproject HelloWorld 실행

IDEA를 열면 아래와 같이 생성된 프로젝트 디렉토리를 볼 수 있습니다.

Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명

디렉터리 설명:

  1. HelloWorld: 프로젝트의 컨테이너입니다.

  2. manage.py: 이 Django 프로젝트와 다양한 방식으로 상호 작용할 수 있게 해주는 유용한 명령줄 도구입니다.

  3. HelloWorld/init.py: Python에게 해당 디렉터리가 Python 패키지임을 알려주는 빈 파일입니다.

  4. HelloWorld/settings.py: 이 Django 프로젝트에 대한 설정/구성입니다.

  5. HelloWorld/urls.py: Django 에서 제공하는 웹사이트의 "디렉토리"인 이 Django 프로젝트에 대한 URL 선언입니다.

  6. HelloWorld/wsgi.py: 프로젝트를 실행하기 위한 WSGI 호환 웹 서버에 대한 포털입니다.

다음으로 HelloWorld 디렉토리에 들어가서 다음 명령을 입력하여 서버를 시작합니다.

python manage.py runserver 0.0.0.0:8000
로그인 후 복사

0.0.0.0을 사용하면 다른 컴퓨터가 개발 서버에 연결할 수 있습니다. , 8000은 포트 번호입니다. 지정하지 않으면 포트 번호는 기본적으로 8000으로 설정됩니다.

브라우저에 서버의 IP와 포트 번호를 입력하세요. 정상적으로 시작되면 다음과 같이 출력됩니다.

Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명

3단계: 애플리케이션을 생성하려면 명령줄에 django-admin.py startapp 데모

를 입력하고 IDEA를 열면 아래와 같이 생성된 프로젝트 디렉터리를 볼 수 있습니다.

Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명

디렉터리 설명:

  1. demo: 应用的容器。注:后面的页面设计文件,在此目录下创建目录templates,名为XX.html的文件放在此处。

  2. init.py:如上一个init.py文件

  3. migrations: 数据库相关目录,同步数据库之后会出现数据类。

  4. admin.py: admin后台管理文件

  5. apps.py: app应用管理文件

  6. models.py:主要用一个 Python 类来描述数据表,称为模型(model) 。运用这个类,你可以通过简单的 Python的代码来创建、检索、更新删除 数据库中的记录而无需写一条又一条的SQL语句。

  7. tests.py:测试文件

  8. views.py:包含了页面的业务逻辑。

创建超级管理员

python manage.py createsuperuser

# 按照提示输入用户名和对应的密码就好了邮箱可以留空,用户名和密码必填

# 修改 用户密码可以用:
python manage.py changepassword username
로그인 후 복사

服务端响应客户端请求过程

流程图如下:

Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명 

上面的流程图可以大致描述Django处理request的流程,按照流程图2的标注,可以分为以下几个步骤:

1.用户通过浏览器请求一个页面。

2.请求到达Request Middlewares,中间件对request做一些预处理或者直接response请求。

3.URLConf通过urls.py文件和请求的URL找到相应的View。

4.View Middlewares被访问,它同样可以对request做一些处理或者直接返回response。

5.调用View中的函数。

6.View中的方法可以选择性的通过Models访问底层的数据。

7.所有的Model-to-DB的交互都是通过manager完成的。

8.如果需要,Views可以使用一个特殊的Context。

9.Context被传给Template用来生成页面。

a.Template使用Filters和Tags去渲染输出

b.输出被返回到View

c.HTTPResponse被发送到Response Middlewares

d.任何Response Middlewares都可以丰富response或者返回一个完全不同的response

e.Response返回到浏览器,呈现给用户

url() 函数

Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。

  1. regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。

  2. view: 用于执行与正则表达式匹配的 URL 请求。

  3. kwargs: 视图使用的字典类型的参数。

  4. name: 用来反向获取 URL。

Django项目部署

在前面的介绍中我们使用 python manage.py runserver 来运行服务器。这只适用测试环境中使用。
正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttpd等,本文后续将以 Nginx 为例。

设置用自己的iP地址访问项目

1.首先需要执行>manage.py runserver 0.0.0.0:8000。

2.在setting.py里面需要添加ALLOWED_HOSTS=”*”。

【相关推荐】

1. Python免费视频教程

2. Python学习手册

3. 马哥教育python基础语法全讲解视频

위 내용은 Python으로 Django 프로젝트를 빌드하는 전체 과정에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿