一.创建APP

	在每一个django项目中可以包含多个APP,相当于一个大型项目中的分系统、子模块、功能部件等.互相之间比较独立,但也有联系.
在pycharm下方的Terminal终端中输入命令:
python manage.py startapp app01
就可以创建一个名为app01的APP,django自动生成app01文件夹
创建好之后需要在settings中进行配置注册

二.模板路径配置

	模板文件一般都存放在templates文件夹下,该文件夹也就是html文件们的归置目录,使用pycharm创建Django项目时,该文件夹是默认添加的,如果是自己建的Django项目,就需要在settings文件夹中进行配置注册.

三.静态文件配置

我们可以将html文件返回给用户,但是还需要一些其他类型的文件如css,js和其他的插件,所以在django中,一般将静态文件放在static目录中.所以需要在项目目录下新建一个static文件夹

当然,为了让django找到这个目录,依然需要对settings进行配置

然后在html文件中,就可以引入js文件了

四.登录功能

login.html

<body>
<!-- action:提交给后台的地址,有三种写法 -->
<!-- 1.http://127.0.0.1:8000/login -->
<!-- 2./login/ -->
<!-- 3.空 -->
<form action="/login/" method="post">
<p>
用户名:<input type="text" name="name" class="form-control">
</p>
<p>
密码:<input type="text" name="pwd" class="form-control">
</p>
<input type="submit" value="提交">
</form>
</body>

views.py

def login(request):
# request.method--前台提交过来请求的方式
if request.method == "GET":
return render(request, "login.html")
elif request.method == "POST":
# request.POST(相当于字典)--post形式提交过来的数据
# request.POST.get("name")--推荐用get取值(取出列表最后一个值)
name = request.POST.get("name")
pwd = request.POST.get("pwd")
# 连接数据库
conn= pymysql.connect(host='127.0.0.1', port=3306, db='abc', user='root', password='123456')
cur = conn.cursor()
# 防止sql注入漏洞,推荐以下写法
cur.execute('select * from user where name=%s and password=%s', [name, pwd])
user = cur.fetchone()
if user:
return HttpResponse("登录成功")
else:
return HttpResponse("密码或用户名错误")

五.get请求和post请求

get:获取数据,页面,携带数据是不重要的数据(数据量有大小限制)
post:往后台提交数据

六.新手三件套

1.render--返回页面,默认回去templates中来,所以需要注意路径的配置
2.redirect--重定向
3.HttpResponse--返回字符串
本质都是返回HttpResponse的对象

七.ORM介绍

ORM即Object Relational Mapping,全称为对象关系映射

使用方式:连接mysql数据库
在settings文件中配置:
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': 'admin',
'NAME': 'lqz',
}
还需要在app下的__init__.py中写:
import pymysql
pymysql.install_as_MySQLdb() 然后在models文件中新建一个类,该类就是数据库中的数据表
class User(models.Model):
# 自增int类型,主键
id = models.AutoField(primary_key=True)
# name和pwd是varchar类型,长度是32
name=models.CharField(max_length=32)
pwd=models.CharField(max_length=32) 接下来要在pycharm的teminal中通过命令创建数据库的表了。有2条命令,分别是:
1.python manage.py makemigrations ---记录以下数据库的变化
2.python manage.py migrate ---将变化同步到数据库中

最新文章

  1. EventLoop和EventLoopGroup
  2. Matlab2015入门学习02
  3. Xcode 中的相对路径与绝对路径的相关设置
  4. response压缩响应
  5. 1.Nexus安装与配置
  6. Educational Codeforces Round 3 E. Minimum spanning tree for each edge (最小生成树+树链剖分)
  7. HDU 5492(DP) Find a path
  8. phpmyadmin出现空password登录被禁止
  9. css3整理-方便查询使用
  10. Centos7 升级 gcc
  11. bzoj 2599
  12. 深入理解JVM(4)——对象的创建和访问
  13. python中用selenium调Firefox报错问题
  14. Sqluldr2 libclntsh.so报错处理
  15. vue/cli 3.0 脚手架【进阶】 使用 amfe-flexible 和 postcss-px2rem进行移动端适
  16. [Linux]Linux下Apache服务器配置
  17. mysql 查询锁表
  18. fastjson 简单使用 及其JSONObject使用
  19. jquery parents用法
  20. discuz回贴通知插件实现-页面嵌入点(钩子)

热门文章

  1. Java+Bigdata学习路线
  2. 查看日志tail命令
  3. [Linux] 创建、删除用户
  4. Colab使用教程
  5. Cesium Workshop
  6. VS中显示行号
  7. LC 989. Add to Array-Form of Integer
  8. saveLayerAlpha简单入门
  9. OSG 遍历fbx节点
  10. thinkphp3.2.2 没有定义数据库配置