python大法攻略Python 运维程序员

Django简易笔记

2017-06-19  本文已影响29人  眼君

安装:

可使用python自带的pip工具安装:shell输入命令pip install Django即可。

请注意!如果你安装了python2和python3两个版本,请注意区分你的Django安装在那个python的库中。

创建Django项目:

在你放置Django项目的目标文件夹下打开命令行,输入命令:Django-admin startproject XXX即创建一个Django项目的文件夹,‘XXX’为自定义的Django项目名称。

创建项目和应用

测试链接:

此时打开上述创建的目录(和manage.py文件在同一个目录下,以后执行python manage.py X命令都要在此命令下),然后打开命令行,执行命令:python manage.py runserver,会出现如下画面:

runserver

此时在浏览器键入127.0.0.1:8000,如果出现如下提示,表示django项目创建成功:

成功页面

当然我们也可以执行如下命令,这样的话就可以用其它的电脑打开这个网页

>>>python manage.py runserver 0.0.0.0:8000

然后在其它服务器键入这台电脑的IP:8000就可以打开这个页面

创建Django中的应用:

执行命令:python manage.py startapp XXX,‘XXX’为自定义都Django应用名称,此时文件夹中路径应该是这样的:

各文件路径关系

此时就创建了一个应用,在Django项目根录下会出现一个同名都文件夹,此时打开Django项目根目录下与项目同名都文件夹(注意是与项目名同名,而非应用名),会有四个文件:

settings.py存放与项目相关的全局配置

urls.py是整个项目的url配置入口

wsgi.py是项目启动的wsgi文件

打开settings.py文件,在INSTALLED_APPS = []中尾行添加应用名。

在settings.py中添加应用名

创建数据库

回到项目根目录下,打开命令行执行:python manage.py migrate,创建数据库。

成功后的提示

此时发现项目根目录下多出了一个数据库文件:

新创建多数据库文件

配置数据库:

django自带一个sqlite数据库,当然你也可以配置成Mysql。打开django项目的settings.py文件,找到这几行数据:

数据库配置前 数据库配置后

配置Django-ORM:

ORM,即Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法。

此时打开项目根目录下与应用名同名的文件夹,找到models.py文件并打开,创建数据库的映射表模型:

添加数据表模型

class Meta

Django模型类的一个Meta内部类,它用于定义一些Django模型类的行为特性。下面是它的一些参数作用:

meta类各参数的含义

创建并保存好之后,回到项目根目录下,执行命令:

python manage.py makemigrations 和 python manage.py migrate 将刚添加的数据模型在数据库中创建对应的数据表:

注册数据表

以后,每次修改了models.py文件,都需要执行这两行命令。

创建视图函数:

打开项目根目录下与应用名同名的文件夹,找到views.py文件并打开,在顶行导入创建的ORM,并添加对应的视图函数,视图函数通过render方法接收一个request请求,返回一个html页面:

views.py

在函数中可以对ORM的数据进行增删改查

在视图函数中进行操作

配置模版文件:

在上述应用文件夹中,新建两个空文件夹templates和static,分别用于后续装载html页面文件和静态文件,之后回到settings.py文件,找到TEMPLATES = [ ] 中的'DIRS':[ ]这行,在这行的[ ]中添加模版路径os.path.join(BASE_DIR,'templates').replace('\\','/'):

修改前 修改后

保存退出后,在上述templates文件夹中创建一个html文件,命名为index.html,打开此文件,在顶行添加一行{% load staticfiles %},然后将<head>各部分从static文件夹引入的静态链接全改为href = “{% static 'xx/xxx' %}”的样式,如下图: 

修改静态资源的路径

配置静态文件路径:

添加的是静态文件夹的路径

配置静态文件路径

注意:STATIC_ROOT是用来存放使用python manage.py collectstatic命令收集起来的文件的,这个目录也是在正式环境(DEBUG=FALSE)时NGINX寻找项目静态文件的目录。这个目录不会在DEBUG=TRUE时发挥作用,此时如果使用manage.py runserver启动时Django会自动在(myProject/appName/static)寻找静态文件目录。

配置URL:

打开根目录下与项目名同名的文件夹,找到urls.py文件并打开,开头添加一行from XXX.views import YYY语句从views.py文件中引入视图函数,其中XXX为应用名,YYY为视图函数名。

urls.py

之后,在urlpatterns = [ ]中添加视图函数对应的URL映射。

*Ctrl+p可以快速搜索文件名

配置流程图

测试启动:

完成上述步骤后,可以测试启动了!在根目录下打开命令行,执行python manage.py runserver命令。如果命令行出现下面的提示,则Django启动成功。

成功提示

打开浏览器,输入127.0.0.1:8000/index则出现下图:

测试页面

配置后台:

Django有自带的后台,可以用以管理数据库。在项目更目录下打开命令行,执行python manage.py createsuperuser命令创建超级管理员。并按照提示一次输入账户名、邮箱(可不填,直接回车)、密码,然后回车,出现下图即成功。

创建后台账户成功

根目录下执行python manage.py runserver成功运行后,在浏览器中输入127.0.0.1:8000/admin即可打开后台的登录页面。

后台登录页面

输入刚创建的用户名密码登录可以进入后台查看数据,为了在后台显示models.py中注册的数据表和记录,需要打开应用目录下的admin.py文件,添加from XXX.models import YYY和admin.site.Register(YYY)两条语句,其中XXX是应用名,YYY是在models.py中建立的数据表名。

后台注册

保存后,重新在根目录下运行python manage.py runserver,再进入后台就可以看到在models.py中注册的数据表了。

Django后台

点击People一行的Add建立两个People的数据实例,然后单击People进入这张数据表,发现无法区分两个数据实例。

数据表

此时,我们回到models.py中,在peole类下添加魔法方法:

def__str__(self):

    return self.name

添加魔法方法

之后执行python manage.py makemigrations 和python manage.py migrate便可以在后台用这个数据表的name属性来区分两个数据实例了。

修改后的数据表

转载请注明出处,作者微信(荷鲁斯的眼:Horus0421)

上一篇下一篇

猜你喜欢

热点阅读