【银角大王——Django课程Day1】

Django框架第一课

    • 安装Django框架
    • 方式一(命令行的形式创建Django项目)
    • 方式二(适合企业版的pycharm)
    • 默认文件介绍
    • app文件介绍
    • 快速上手
    • 我的导包一直爆红是因为我没使用解释器,没导入包,去设置里面导入包即可——点击应用
    • templates模板
    • 静态文件
    • 静态文件中引入css,js框架
    • 引入bootstrap和jQuery到项目中
    • Django模板语法——实现数据与视图分离
      • 还有其他的语法可以查看菜鸟教程进行学习链接: [菜鸟教程](https://www.runoob.com/django/django-template.html)
      • 可以看出HTML页面中拿到的是已经被渲染完成的字符串,而不是拿到数据本身
    • 请求和响应

安装Django框架

python
________python.exe
________Scripts
________________pip.exe
________________django-admin.exe【工具,创建Django项目】
________Lib
________________内置模块
________________site-packages
________________________openpyxl
________________________python-docx
________________________flask
________________________django【框架的源码】

方式一(命令行的形式创建Django项目)

(1)打开终端
(2)进入想要项目存放位置的目录——这是我的位置

F:\python_djangolocal

(3)进入存放目录后,执行命令创建项目——这是我的python存放位置

//python安装的路径下的Scripts下的django工具  startproject  项目名称
"F:\python学习\python3.7.2024\Scripts\django-admin.exe" startproject djangoproject_1

在这里插入图片描述

方式二(适合企业版的pycharm)

默认文件介绍

请添加图片描述

app文件介绍

在这里插入图片描述

快速上手

(1)注册app

项目里面的settings中注册app
在INSTALLED_APPS数组里编写app01(创建的app的文件名字).apps.App01Config(apps里面的类)

在这里插入图片描述在这里插入图片描述
(2)编写URL和视图函数的关系

  • 访问网址(admin/) 就会去执行函数并执行函数,函数在views中
    在这里插入图片描述
  • 编写url.py——记得导入view
    在这里插入图片描述
  • 编写视图函数view.py——定义函数

在这里插入图片描述
(3)启动Django项目

方式一:(使用命令)

在pycharm终端执行

python manage.py runserver

在这里插入图片描述

方式二:点击按钮

我的导包一直爆红是因为我没使用解释器,没导入包,去设置里面导入包即可——点击应用

在这里插入图片描述
运行图:
在这里插入图片描述
————总结url创建关系,view里面去写页面——右击文件分屏
在这里插入图片描述

templates模板

返回一个HTML——编写函数views.py中使用render
在这里插入图片描述
编写urls.py建立关系
在这里插入图片描述

简单编写一下HTML
在这里插入图片描述
运行图:
在这里插入图片描述
注:使用render返回一个html,app注册顺序中的一个个去找templates,直到找到相应的templates目录中的HTML。

静态文件

创建静态文件目录——在app目录下
在这里插入图片描述

静态文件中引入css,js框架

将bootstrap和jQuery框架拷贝到相应位置
在这里插入图片描述

引入bootstrap和jQuery到项目中

我是用老师的方法还是引用不了,只能在前面加俩点

 <link rel="stylesheet" type="text/css" href="../static/plugins/bootstrap-3.4.1-dist/css/bootstrap.css">

在这里插入图片描述

Django模板语法——实现数据与视图分离

在HTML中写一些占位符,由数据对这些占位符进行填充

(1)变量模板

view:{"HTML变量名" : "views变量名"}
HTML:{{变量名}}

在这里插入图片描述
在这里插入图片描述
(2)list模板
在这里插入图片描述
在这里插入图片描述
(3)for模板语法和if/else/endif模板语法

注:不得不说这个if语句真的很坑——给我搞无语了,整了半天
条件判断的格式有问题,变量num、判断符、条件这三者之间一定要用空格隔开,num>=90,要写成num >= 90。这样才是正确的格式。有时候一个人自学挺无助的,想报警。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a53cf42f52504e3782a3098833b618f1.png

效果图:
在这里插入图片描述

还有其他的语法可以查看菜鸟教程进行学习链接: 菜鸟教程

可以看出HTML页面中拿到的是已经被渲染完成的字符串,而不是拿到数据本身

在这里插入图片描述
这就实现了数据与视图分离

请求和响应

post请求案例:

在login.html中编写

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>


<h2>用户登录</h2>

<form method="post" action="/login/">
<!--防伪请求,在post请求中一定要编写-->

    {% csrf_token %}

  <input type="text" name="user" placeholder="用户名">
  <input type="password" name="pwd" placeholder="密码">
  <input type="submit" value="提交"/>

</form>

</body>
</html>

在url.py中编写:

from django.urls import path

from app01 import views
urlpatterns = [

    # 访问网址admin/ 就会去执行函数并执行函数,函数在views中

    # path('admin/', admin.site.urls),
        path('index/', views.index),
        path('users_list/', views.users_list),
        #用户登录请求与响应案例
        path('login/', views.login),

]

在views.py中编写


def login(request):


    #request对象,封装了用户请求的数据
    #通过HttpResponse返回内容
    # return HttpResponse('欢迎使用')

    #请求与响应案例
    if request.method == "GET":

     return render(request,"login.html")

    else:
        return HttpResponse("提交成功")

效果图如下:
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/558430.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

(保姆级教学)跨站请求伪造漏洞

1. CSRF漏洞 CSRF&#xff08;Cross-site request forgery&#xff09;跨站请求伪造&#xff0c;也被称为One Click Attack 或者Session Riding&#xff0c;通常缩写为CSRF或者XSRF&#xff0c;是一种对网站的恶意利用。尽管听起来像跨站脚本&#xff08;XSS&#xff09;&…

【银角大王———Django学习DAY0——基础准备】

银角大王——Django学习前情提要 &#xff08;1&#xff09;在pycharm中下载Flask&#xff08;2&#xff09;使用Flask&#xff08;3&#xff09;下载BootStrap框架&#xff08;4&#xff09; 使用BootStrap框架 &#xff08;1&#xff09;在pycharm中下载Flask 在设置——项目…

搭建sql-lab出现的php不兼容

下载不了的时候&#xff0c;直接打开该网址下载5.xphp版本&#xff0c;解压到C:\php_studyv8\phpstudy\phpstudy_pro\Extensions\php&#xff08;可能路径都不一样&#xff0c;找到Extensions\php放到该目录下&#xff09;

element table加减列

// 有个特别注意的地方,下面这行代码,key一定绑的是item,千万不要绑定index,不然就会出现异常 //<el-table-column v-for"(item,index) in titleList" :key"item" min-width"150" align"center"><el-table fit :data"d…

微信小程序酒店选择日期和入住人数(有效果图)

效果图 app.vue onLaunch:function(options){this.defaultcache()}defaultcache(){// 入住信息缓存var arr this.getDateTime();var ReserVation {reservType:0,//1 人数 2日期InCheckin:{},//入离日期peopleArr:[{title:成人,num:2},{title:儿童,num:0},{title:宝子,num:1…

【C语言__动态内存管理__复习篇6】

目录 前言 一、动态内存管理 二、动态内存函数 2.1 malloc 2.2 free 2.3 calloc 2.4 realloc 三、动态内存常见的6个使用错误 3.1 接收malloc/calloc返回的参数后未及时检查是否为NULL 3.2 越界访问动态内存空间 3.3 对非动态开辟的内存使用free释放 3.4 使用free只释放了…

【GoWeb框架初探——GRPC】

1. GRPC介绍 1.1 什么是RPC RPC全程是Remote Procedure Call&#xff0c;远程过程调用。这是一种协议&#xff0c;是用来屏蔽分布式计算中的各种调用细节&#xff0c;使得你可以像是本地调用一样直接调用一个远程的函数。 调用流程 1&#xff09;客户端发送数据&#xff08;…

flutter 谷歌的苹果系统消息推送

flutter firebase 云消息通知教程 (android-安卓、ios-苹果) Android、ReactNative、Flutter集成Firebase推送注意事项 Android&#xff1a;Firebase 凭据 iOS&#xff1a;基于 p8 令牌的 APN 连接 iOS&#xff1a;p12 生成证书 Flutter之对接国外推送onesignal踩坑笔记&a…

基于SSM的平面设计课程在线学习平台系统(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的平面设计课程在线学习平台系统&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;…

C++:STL-list模拟实现:迭代器的封装

STL-list模拟实现细节 一. 模拟实现的思想细节1.迭代器实现&#xff1a;用类进行封装2.和--的重载3.奇怪的->重载4.const迭代器 二.实现源码 一. 模拟实现的思想细节 1.迭代器实现&#xff1a;用类进行封装 为什么不使用原生指针&#xff1a; ​ 相比于vector和string&am…

9.Godot数组|遍历|静态变量|对象|调试

数组和字典的遍历 数组的概念 数组是一组数据的集合。在程序中负责批量处理数据。数组中的元素可以包括各个类型的数据&#xff0c;也可以对数组内数据类型进行限定。可以通过 数组名【数字】 的形式来访问数组元素&#xff0c;数字 0 代表数组的第一个元素。数组可以通过调用…

《中学科技》是什么级别的刊物?如何投稿?

《中学科技》是什么级别的刊物&#xff1f;如何投稿&#xff1f; 《中学科技》创刊于1976年&#xff0c;由上海世纪出版&#xff08;集团&#xff09;有限公司主管&#xff0c;上海科技教育出版社有限公司主办的省级学术期刊&#xff0c;《中学科技》以传播科技知识、启迪智慧…

蓝桥杯2024年第十五届省赛真题-宝石组合

思路&#xff1a;参考博客&#xff0c;对Ha,Hb,Hc分别进行质因数分解会发现&#xff0c;S其实就等于Ha&#xff0c;Hb&#xff0c;Hc的最大公约数&#xff0c;不严谨推导过程如下&#xff08;字丑勿喷&#xff09;&#xff1a; 找到此规律后&#xff0c;也不能枚举Ha&#xff…

AI容器化部署开发尝试 (一)(Pycharm连接docker,并部署django测试)

注意&#xff1a;从 Docker 19.03 开始&#xff0c;Docker 引入了对 NVIDIA GPU 的原生支持&#xff0c;因此若AI要调用GPU算力的话docker版本也是有要求的&#xff0c;后面博客测试。 当然本篇博客还没设计到GPU的调用&#xff0c;主要Pycharm加Anaconda的方案用习惯了&#…

基于Springboot的社区待就业人员信息管理系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的社区待就业人员信息管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三…

pdf加水印怎么加?自己原创的PDF资料分享到网络上需要采取一些版权保护的措施,添加水印就是个不错的选择

一&#xff0c;水印的基本概念 水印通常是一种用于标识文件来源、版权信息或防止非法复制的标记。它可以是文字、图形或图像等形式&#xff0c;以半透明或半淡化的方式嵌入到文件中&#xff0c;既不影响文件的正常阅读&#xff0c;又能起到标识和保护的作用。 二&#xff0c;…

mars3d实现禁止地图移动,禁止地图左右平移,但是鼠标可以移动的效果。

new mars3d.layer.GeoJsonLayer({渲染后实现鼠标左键按住不释放拖动时&#xff0c;地图不跟着拖动效果 当前问题&#xff1a; 1.在map初始化&#xff0c;或者是加载效果的时候&#xff0c;整个地球的场景都是一样的。 如果鼠标左键按住不释放&#xff0c;在屏幕上拖动的时候…

设计模式代码实战-责任链模式

1、问题描述 小明所在的公司请假需要在OA系统上发布申请&#xff0c;整个请求流程包括多个处理者&#xff0c;每个处理者负责处理不同范围的请假天数&#xff0c;如果一个处理者不能处理请求&#xff0c;就会将请求传递给下一个处理者&#xff0c;请你实现责任链模式&#xff…

C++:map和set的使用

一、关联式容器介绍 在学习map和set之前&#xff0c;我们接触到的容器有&#xff1a;vector、list、stack、queue、priority_queue、array&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面存储的是元素本身。 关联式容器也是用…

Appian发布最新版本:通过AI流程自动化推动业务发展

Appian公司于2024年4月16日在弗吉尼亚州麦克莱恩宣布推出Appian平台的最新版本。此版本引入了Process HQ&#xff0c;这是一个集流程挖掘和企业AI于一体的系统&#xff0c;结合了Appian的数据平台。Process HQ为企业运营提供前所未有的可见性&#xff0c;支持数据驱动的决策和流…
最新文章