Django框架(二)—— 基本配置:app注册、模板配置、静态文件配置、数据库连接配置post和get...

app注册、模板配置、静态文件配置、数据库连接配置post和get

一、app

在Django中,APP可以用以下类比

大学 --------------------项目
    计算机学院------------app01
    土木学院 ------------ app02
1、app创建
方式一:在terminate命令行创建: python manage.py startapp app01(app名字)
        亦可:pycharm菜单栏中 Tools --> run manage.py task ,然后在terminate输入命令 startapp app01(app名字)
方式二:在创建项目的时候,直接创建app
2、app注册
  • 方式一创建app
# 在配置文件的 settings.py 中的 INSTALLED_APPS 中,添加
'app01'   # app名字
或者
'app01.apps.App01Config'
  • 方式二创建app
# pycharm会自动注册app,即 INSTALLED_APPS 中
'app01.apps.App01Config'

在注册过一次以后,不能再次注册

二、模板配置

1、创建模板文件

在Django中创建一个templates 文件夹,用于存放前台的html文件

2、模板注册
# 在配置文件的settings.py中的 TEMPLATES 中配置路径
'DIRS': [os.path.join(BASE_DIR, 'templates')]

三、静态文件配置

STATIC_URL = '/static/'  # 改语句一般不更改
# static文件夹刚开始是没有的,你必须自己在根路径下创建,创建好了在 STATIC_URL='/static/' 这行代码下写
STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static'),
]
# 变量名必须是 STATICFILES_DIRS,必须大写,列表里面可以多个路径,看你自己的需求,配置好这个后,你就可以在你的html页面中
导入相关的静态文件了,比如导入一个css文件,我写个伪代码
<link rel="stylesheet" href="/static/mycss.css">
注意注意了:上面代码中的static不是我们自己创建的static文件夹,它对应的是 settings.py 中的STATIC_URL = '/static/'这句代码,假如这句代码中'/static/'变成'/abc/'的话,那么html文件中导入css的那句代码中的"/static/mycss.css"也应变成"/abc/mycss.css",他们两个是相对应的。

四、数据库连接配置

1、连接sqlite数据库

pycharm默认连接数据库,默认已配置好,无需再配置

2、连接mysql数据库
# 1.在配置文件的settings.py中的 DATABASES 中配置路径
'default': {
                'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'PORT': 3306, 'USER': 'root', 'PASSWORD': 'admin', 'NAME': 'lqz', } # 2.在__init__.py文件中配置 import pymysql pymysql.install_as_MySQLdb()

五、get请求和post请求

get:获取数据,页面,携带数据是不重要的数据(数据量有大小限制),数据会显示出来,如果是用户名密码,这种方式     就不安全
post:往后台提交数据

六、新手三件套

1 render--返回页面
    默认会去templates里找,注意路径
2 redirect--重定向
3 HttpResponse
# 本质:都是返回HttpResponse的对象

七、登录功能案例

# 1. login.html  
***重点***1. action:提交到后台的地址三种写法:
              1. http://127.0.0.1:8000/login 2. /login/ 推荐用 3. 空 2. method post方式 3. <input type="submit" value="提交">或<button></button> type不可以是button <form action="http://127.0.0.1:8000/login" method="post"> <p>用户名:<input type="text" name="name" class="form-control"></p> <p > 密码:<input type="password" name="pwd" class="form-control"> </p> <input type="submit" value="提交"> </form> # 2.视图层: 1 request.method ----前台提交过来请求的方式 2 request.POST(相当于字典)----post形式提交过来的数据,(http请求报文的请求体中) 3 request.POST.get('name') ----推荐用get取值(取出列表最后一个值) 4 request.POST.getlist('name')-----取出列表所有的值_ 5 前台get方式提交的数据,从request.GET字典里取

转载于:https://www.cnblogs.com/zhuzhiwei-2019/p/10779071.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值