Django基础功能操作

 

  1.登录功能(web简易版 基于pymysql 对于数据库的操作,接下来都是用django与数据库的操作)

   需要注意的小点:补充

 (了解知识点)在向器发送是否加斜杠的本质(两次访问)

​ 第一次是浏览器发送信息说没有斜杠没有办法匹配3xx重定向(Django)说在试一次加斜杠的看看,斜杠成功了,再连不上就会报错。

  2.templates的作用:

  所有的html文件都是默认写在templates 文件下面;用来连接函数与html的 返回函数 发送到浏览器 (渲染页面)、

  3.关于静态页面的设置:  

为什么需要静态文件:主要是暴露给外界能够访问服务器静态文件下面的所有资源

​ 注意默认大写:STATIC_URL="/xxx/"  #接口前缀 跟你的静态文件夹的名字一样一点关系都没有  只是为了好记
 静态文件的配置:STATIC_BIRS = [
    os.path.join(BASE_DIR,'static')    #就是你的静态文静夹
]
注意#ps:会依次查找列表中所有的静态文件路径 找到的话就立刻停止 没有这返回404

  4.form 表单提交的两种方式:

  

 form表单触发提交数据的动作两种方式
    1.<input type="submit" class="bnt btn-success">


    2.<button></button>

 

  5.登录:提交数据的地址如何指定的及方式

        action 属性控制提交的地址
        方式1:全路径
        <form action="http://127.0.0.1:8000">
        方式2:可以只写路径后缀
         <form action="/login/">
        方式3:不写默认当前路径:http://127.0.0.1:8000/login/

 

  6.把默认get 请求数据改成 method=post 在form 表单 中 添加method=post

  7.登录时请求方式解析:

def login(request):
    print(request.method)
    if request.method== 'GET':    # 
        return render(request, 'login.html',)
    elif request.method == 'POST':
        return HttpResponse('已收到请求信息 ')   #
    
    # jason 建议:减少代码冗余
    if request.method=='POST':
        return HttpRepoast('请求OK')
    retuen render(requrest,'lgoin.html')
    ————————————————
    
def login(request):
    print(request.method)
    if request.method== 'GET':
        return render(request, 'login.html',)
    elif request.method == 'POST':
        print(request.POST)    # <QueryDict: {'username': ['贝多芬'], 'password': ['123']}> 大字典
        # 所有可以通过字典取值
        print(request.POST.get('username'))   # value 虽然是个列表但是拿出来的确是单个的字符
        # 切默认
        print(request.POST.get('password'))
        # 里面要是有多个爱好 可以getlist
        print(request.POST.getlist('username'))

    
    #    if request.method=='POST':
        return HttpResponse('请求ok')
    print(request.GET)
    # GET请求和POST请求一模一样
    return render(request,'login.html')

 

  8.django  操作数据库的方式:在settings 中DATABASES 配置文件

 

 添加我们操作数据需要的标准需求:如下(*********)

        1.需要修改的配置文件******************
        
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        
        'POST':3306,
        'HOST':'127.0.0.1',
        'USER':'root',
        'NAME':'day54',
        'PASSWORD':'8888'
    }
}

 

  9.数据库配置设置好之后我们需要把

  每一步都不能出错(**********)

  告诉django 用pymysql 替换他默认mysql_db 模块数据连接数据库
  方式1:在咱们的项目文件夹myfirstdjango下面的__init__.py

  方式2: 也可以在咱们的应用文件夹app01下面的__init__.

  

  # 固定写法(***********)
      import pymysql
      pymysql.install_as_MySQLdb()   # 告诉Django用pymysql代替mysqldb链接数据库
    

 

  10.Django 中的ORM是如何映射到我们数据的表关系:

  

```python
#9:dajango 中的ORM类与数据库中(mysql)中表的关系
# 类 >>>>>>>>   对应数据库中的一张表
# 对象>>>>>>>   对应数据库中的一条条记录
# 对象的属性>>>>>对应数据库中的一条记录某个字段对应的值
```

   11.如何事现在Django  进行前后端数据交互 :流程一定要要明确

    1.先注册功能实现 用户对于注册 增  查 改 删 

         思路:

# 修改用户信息,内容,文章 数据库
def edit(request):
    if request.method == 'POST':

        username=request.POST.get('username')
        password=request.POST.get('password')
        print(request.POST)   # <QueryDict: {'edit_id': ['1'], 'username': ['贝多芬'], 'password': ['123']}>
        print('0000')
        print(request.GET)    # <QueryDict: {'edit_id': ['7']}>  # t同样GET也可以拿到用户修改数据时发送的edit_id
        # 获取用户修改数据的id
        edit_id = request.POST.get('edit_id')
        edit_id = request.GET.get('edit_id')
        models.User.objects.filter(id=edit_id).update(name=username, password=password)
        return redirect('/userlist')

     # 先写的这里
    # edit_id = request.GET.get("edit_id")
    #
    #
    # return redirect(request,'userlist')

    edit_id=request.GET.get('edit_id')
    user_obj=models.User.objects.filter(id=edit_id).first()
    return render(request,'edit.html',locals())

 

 

 


​  

转载于:https://www.cnblogs.com/mofujin/p/10988250.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django 是一个流行的 Python Web 框架,它提供了许多便捷的功能和库来简化 Web 开发。在 Django ,你可以使用 MySQL 数据库进行数据存储和操作。 要使用 Django 连接 MySQL 数据库,首先需要安装 Django 和 MySQL 的 Python 驱动程序。你可以通过 pip 命令来安装它们: ``` pip install Django pip install mysqlclient ``` 安装完成后,你需要在 Django 项目的设置文件配置数据库连接。打开项目的 settings.py 文件,找到 DATABASES 部分,并进行如下配置: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'your_database_name', 'USER': 'your_username', 'PASSWORD': 'your_password', 'HOST': 'your_host', 'PORT': 'your_port', } } ``` 将上述配置的 "your_database_name" 替换为你的数据库名称,"your_username" 替换为数据库的用户名,"your_password" 替换为数据库密码,"your_host" 替换为数据库主机地址,"your_port" 替换为数据库端口号。 配置完成后,你可以使用 Django 提供的 ORM(对象关系映射)来操作 MySQL 数据库。首先,在你的 Django 应用创建一个模型类,定义数据表的结构和字段。例如,下面是一个简单的示例模型类: ```python from django.db import models class Book(models.Model): title = models.CharField(max_length=100) author = models.CharField(max_length=100) publication_date = models.DateField() def __str__(self): return self.title ``` 定义好模型类后,运行以下命令来创建数据库表: ``` python manage.py makemigrations python manage.py migrate ``` 现在,你就可以在代码使用该模型类来进行数据库操作了。例如,创建一条新的书籍记录: ```python book = Book(title='Django for Beginners', author='John Doe', publication_date='2021-01-01') book.save() ``` 查询书籍记录: ```python books = Book.objects.all() for book in books: print(book.title) ``` 更新书籍记录: ```python book = Book.objects.get(title='Django for Beginners') book.author = 'Jane Smith' book.save() ``` 删除书籍记录: ```python book = Book.objects.get(title='Django for Beginners') book.delete() ``` 这只是 Django 操作 MySQL 数据库的基本示例,你还可以使用更多高级的查询和操作方法。详细的文档可以在 Django 官方网站上找到:https://docs.djangoproject.com/

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值