django学习笔记-1
1、背景说明
django版本:1.8.2
python版本:3.6.5
pip版本:pip 18.0
以紫红色标注的为python文件中的示例代码。
2、安装django
pip install django
3、创建项目
创建项目命令:
django-admin startproject 项目名称
创建完成项目目录如下:
E:\DJANGO_PROJECTS\TEST1 #该处test1为项目的名称
├─.idea
│ └─inspectionProfiles
└─test1 #此目录为应用目录,也可以理解为一个模块
└─__pycache__
创建完成项目之后,各文件或目录解释,此处父级目录为:E:\DJANGO_PROJECTS\test1。
db.sqlite3:默认的数据库存储引擎,采用sqlite3作为默认的数据库存储引擎。
manage.py:项目的管理配置文件
test1/:项目中应用目录
test1应用目录下文件说明: __init__.py:包含该文件,说明test1是一个模块。 settings.py:项目的配置文件,包含数据库配置、项目下应用的注册配置、项目的根url等配置。 urls.py:项目的访问url配置,如下所示代码: urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'^booktest/',include('booktest.urls'), ] wsgi.py:项目部署服务器上运行,wsgi配置文件。
4、创建应用
此处操作目录为:E:\DJANGO_PROJECTS\test1。
创建应用:
python manage.py startapp 应用名称 一个项目中可以创建多个应用。
备注:需要在我们的项目目录下进行创建。同时一个项目中可以创建多个应用。 自定义应用目录说明,假设此处自定义创建的应用为bookinfo,则此处目录为:E:\DJANGO_PROJECTS\test1\bookinfo。 migrations:中文迁移。可以根据当前项目中的模型类去生成数据库脚本,并将脚本映射到数据库中。 modles.py:自定义应用的模型类文件,在此文件定义类,即数据库中表以及字段的配置,以及表之间的关联关系。 tests.py:django自带的测试文件 views.py:定义应用的视图文件,在该文件中主要定义视图的类,即定义返回前端展示的数据、引用的模板文件等等。 定义完模型类之后,需要做一次迁移操作,即生成迁移。生成迁移的文件即是将来转化为sql语句在数据中执行。 生成迁移如下: python manage.py makemigrations 生成迁移之后,会在定义了模型的应用的migrations目录生成一个0001_initial.py文件。该文件内容将来可以转化为sql语句执行。 执行迁移:即根据生成的迁移的文件,去数据库中执行对应的sql语句来创建表。 python manage.py migrate 如果重新定义了应用的模型类,在未修改数据库表结构的情况下,不需要进行迁移操作,但是需要重新进入manage shell方可进行相关信息输出。 在生成迁移之前,需要先做一次注册动作,注册需要修改的文件为settings.py,所属目录为E:\django_projects\test1\test1\settings.py。 所有在项目中引用的应用,都需要先进行注册操作,不进行注册,是无法在项目中进行调用的。
注册操作示例配置如下:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'bookinfo',#即为自定义的应用名称
)
5、启动应用已经访问应用
python manage.py runserver ip地址:端口 默认监听的端口为8000。
默认监听的ip地址为:127.0.0.1
备注:需要在我们的项目目录下,此处示例目录为:/e/django_projects/test1
访问如下:
url地址:127.0.0.1:8000
此处访问404是由于我在E:\django_projects\test1\test1\urls.py中配置了url,没有配置"/"url规则导致,但是已经可以看出,django已经运行起来了。