使用pip包管理器安装Django包:
# pip install Django
Django包安装完成之后,会得到django-admin工具用于管理django项目。
使用django-admin工具创建一个新的django项目:
$ django-admin startproject [项目名称]
一个空的django项目基本文件结构如下所示:
项目名称 ├── 项目名称 │ ├── __init__.py │ ├── settings.py # 项目设置 │ ├── urls.py # 路由设置 │ └── wsgi.py └── manage.py # 项目的管理脚本项目的根目录下是项目的管理脚本manage.py,可以使用该脚本完成创建应用、运行项目等功能。
项目的根目录下还会有一个与项目名称相同的子目录,该目录下保存项目的一些配置。
与传统的WEB开发框架不同,Django中使用App将网站划分为多个功能模块,一个项目由多个App组成,而一个App可以被多个项目所复用。
同样使用django-admin工具在项目目录中创建一个App:
$ django-admin startapp [应用名称]
也可以执行项目管理脚本manage.py来创建新的App:
$ ./manage.py startapp [应用名称]
一个新创建的django应用基本文件结构如下所示:
应用名称 ├── admin.py ├── apps.py ├── __init__.py ├── migrations │ └── __init__.py ├── models.py ├── tests.py └── views.py使用一个应用需要在项目配置文件settings.py中的INSTALLED_APPS列表中添加引用的项目名称,如下所示:
# file: [项目名称]/settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', '[应用名称]' ]执行项目管理脚本manager.py,使用runserver参数即可运行项目:
$ ./manager.py runserver
默认情况下,项目运行在8000端口,使用127.0.0.1:8000即可访问运行的项目,runserver参数后可添加端口号指定项目运行端口:
$ ./manager.py runserver [端口号]
默认情况下,使用django自带的应用服务器启动的项目只能供本机进行访问(与Tomcat、Jetty不同)。 若需要使项目能够被内网的其它机器访问,则在启动时使用0.0.0.0作为ip:
$ ./manager.py runserver 0.0.0.0:[端口号]
同时在项目配置文件settings.py中的ALLOWED_HOSTS列表内添加允许的主机IP,允许所有主机访问配置如下:
# file: [项目名称]/settings.py ALLOWED_HOSTS = [ '*' ]关于Couldn't import Django...错误
在执行./manager.py runserver指令时,输出Couldn't import Django...错误,若已经正确安装了Django模块依然得到错误提示,则需要检查系统默认的Python版本。 若系统默认使用的Python与安装Django的Python版本不同,则应显式使用指定版本的Python解释器来执行manager.py脚本。
以Python 3.6版本为例,执行命令如下所示:
sh python3.6 manager.py runserver
IntelliJ IDEA中安装了Python插件即可进行Django项目的开发。
创建项目
在IntelliJ IDEA中支持直接创建Django项目,创建Python项目时勾选Django支持即可。
导入项目
选择Project from Existing Sources...选项,选择已创建的Djangp项目的根目录。
执行项目导入步骤后会将Django项目转化为标准的IDEA项目。 完成导入的Django项目并不能立即执行,需要在以下路径配置Django项目的信息:
File => Project Structure => Project Settings => Facets => Django
Django project root 项目根路径Settings 项目的配置文件(项目名称\settings.py)Manage script 管理脚本(manage.py)之后创建项目的运行配置(Django server),即可执行项目。