Django 学习记录(AcWing)
Django 2.1 搭建文件结构
前面的都是配置基本步骤,不需要理解,其他Django项目同样步骤操作;
接下来用Django-admin新建一个Django项目:
django-admin startproject acapp //acapp是项目的名称
配置git仓库
ag + (你想要的字符串,启动全文搜索)
进入仓库根目录acapp,执行 python3 manage.py startapp game //创建game app
原理上可以在根目录下创建多个应用
Django2.1网页运行基本步骤
首先你输入网址,会调用acapp/acapp/urls下的对应路由,即path('',include('game.urls')), 之后重定向到game/urls 下的path("",index,name="index"),再由于index和引入的路径,定向到game/views 下的index函数,其中request是必须的,返回的HttpResponse是一个字符串;当创建多个acapp应用时,就应该在acapp/acapp/urls下写上那个对应的路由,建立起区分;
在总路由里面引用自己写的函数要引入 include
其他复习整体流程根据整体流程详细和必要的知识点需要
models:存储各种数据结构(class等)views:存储各种函数urls:路由templates:存储网页模板migrations: /game/路径下,存数据库的
Django 3.1--创建菜单界面
项目系统设计
menu: 菜单界面playground: 游戏界面settings: 设置界面
大体框架为这样,你每个文件夹下也要细分为此;templates目录:管理html 文件urls: 管理路由
修改设置时间;
将新产生的game Django/app 加入到'game.apps.GameConfig'
然后声明静态文件,一般来说,
在 static 存放开发者静态文件
在 media 存放用户静态文件
js 打包脚本NB!
在 templates 文件下创建 menu,playground,settings,multiends文件夹,分别储存三个页面的html文件和终端的html文件
下面是web.html 文件源码:
{% load static %} // js语法糖
<!-- Django 中引入全局setting里的变量 static 的语法-->
<head>
<link rel="stylesheet" href="https://cdn.acwing.com/static/jquery-ui-dist/jquery-ui.min.css">
<script src="https://cdn.acwing.com/static/jquery/js/jquery-3.3.1.min.js"></script>
<!-- 上述两句引入 jQuery 库 -->
<!-- 使用引入的变量 static 的语法如下 -->
<link rel="stylesheet" href="{% static 'css/game.css' %}">
<script src="{% static 'js/dist/game.js' %}"></script>
<!-- 分别引入 css 文件和总的 js 文件 -->
</head>
<body style="margin: 0">
<div id="ac_game_12345678"></div> //创建一个专属id,等学习web知识后来补;
<script>
$(document).ready(function(){
let ac_game = new AcGame("ac_game_12345678") // 创建一个ac_game 对象,让它建立一个 AcGame 对象,在用户端加载渲染
})
</script>
</body>
之后写一下路由,函数;
到此为止的整体流程
输入ip地址后缀为 “” 空,在总路由下面
~acapp/acapp/urls.py/中调用game.urls.index然后跳转到game文件夹下的urls文件,再根据路由进行跳转;例如第一个空后缀,跳转到multiends/web.html,进行相对应的操作,我们采用的是前后端分离开发,所有的 html 渲染都要求在前端完成,开发流程就是,现在 html 里创建好一个有 id 的 div 然后利用 js 文件,捕获到该 div,并进行 渲染 ,因此,该模块的目的就很明确了,先前,在 multiends 的 web.html 文件里设置了一个 id 为 ac_game_12345678 的 div,然后在js / src完成该对象的创建AcGame将 id 传给ac_game,在AcGame里面建立 menu 和 playground界面,代码部分大多是前端知识,等以后学习之后补充!
Django 学习记录(AcWing)的更多相关文章
- Django学习记录--~Biubiubiu
Day One Django常用命令 1.创建Django网站框架 django-admin startproject mysite # mysite为定义的项目文件夹名称 2.超级用户创建 py m ...
- django学习记录
1.参考资料问题: 现在django发布了1.11版本,离线文档下载引擎地址 文档下载地址 在线文档:https://docs.djangoproject.com/en/1.10/intro/tuto ...
- django学习记录--第一个网页“hello django”
一.安装django 下面两种方法任选其一 1.pip或easy_install 安装 pip install django easy_install django 2.到django官网(https ...
- Django 学习记录
这是我自己理解并自己画的,django 请求示意图,表示了它的组织方式. project manage.py: 主要工具文件 settings.py: 配置文件 urls.py: url 定义及其指向 ...
- django学习记录1
在看django的基础知识,还是按照以前一样来总结,还是晚上再统一总结好了,边看边总结好像效果不大. 第一部分是生成数据库,用python manage.migrate命令来生成django的基础架构 ...
- django 学习记录(一)
不使用 drf 来实现django 的 api 接口 json序列化 from django.shortcuts import render from django.views.generic.bas ...
- [Django]模型学习记录篇--基础
模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...
- 巨蟒django之CRM5 学习记录&&课程记录&&班级管理&&私户的数量上限
1.公户变私户(事务+行级锁) 2.私户的数量上限 3.班级的管理 4.课程记录管理 5.学习记录的初始化 6.展示和编辑学习记录
- Django 学习笔记之四 QuerySet常用方法
QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...
随机推荐
- Wireshark捕获网易云音乐音频文件地址
打开Wireshark,开始捕获. 打开网易云音乐,然后播放一首歌. Wireshark停时捕获,然后在不活的文件中搜索字符串"mp3".可以发现有如下信息: 将其中的内容:&qu ...
- linux的时钟中断需要两个全局变量,分别是xtime与jiffies。
linux的时钟中断的两个内核全局变量,分别是xtime与jiffies. 1.xtime一个timeval结构类型变量,是从cmos电路(rtc)中取得的时间,一般是从某一历史时刻开始到现在的时间, ...
- Java学习day21
今天学习了弹窗,除了此前学的按键以外,弹窗也是程序中广泛使用到的一个方面 做了一个简单的弹窗 除了按键以外,有时候我们需要在界面上显示更多的内容,甚至是图片等,这个时候就需要使用到标签 通过标签和Ic ...
- AcWing 158. 项链 (最小表示法)
项链 题源:https://www.acwing.com/problem/content/160/ 题目 原理:最小表示法 找字典序最小的字符串 循环移位,破环成链 (把原串复制一倍) memcpy ...
- 2021.12.07 [TJOI2013]最长上升子序列(Treap+DP)
2021.12.07 [TJOI2013]最长上升子序列(Treap+DP) https://www.luogu.com.cn/problem/P4309 题意: 给定一个序列,初始为空.现在我们将1 ...
- Jenkins+Allure测试报告+飞书机器人发送通知
一.前言 之前讲了jenkins如何设置定时任务执行脚本,结合实际情况,本篇讲述在jenkins构建成功后,如何生成测试报告,以及推送飞书(因为我公司用的是飞书,所以是发送到飞书机器人). 本次实践搞 ...
- java第十二周作业
1.定义一个点类Point, 包含2个成员变量x.y分别表示x和y坐标,2个构造器Point()和Point( intx0,y0),以及一个movePoint (int dx,intdy)方法实现点的 ...
- 02. 树莓派初始配置——安装rz命令
安装rz命令 如果你的ssh工具不带xftp文件上传功能,则需要安装使用ZMODEM协议的rz.sz命令. 1. 用root权限登录 2. 创建下载的目录地址(不创建也行,创建后方便以后文件管理) m ...
- Kafka生成消息时的3种分区策略
摘要:KafkaProducer在发送消息的时候,需要指定发送到哪个分区, 那么这个分区策略都有哪些呢? 本文分享自华为云社区<Kafka生产者3中分区分配策略>,作者:石臻臻的杂货铺. ...
- 彻底解决Failed to execute goal on project xxxxx
1.错误内容:Could not resolve dependencies for project 今天在使用mvn clean package命令对一个子项目打包的时候出现如下错误(但是使用mave ...