Django简易笔记
安装:
可使用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)