Django2常见Django django-admin 命令详解1. 创建新项目django-admin startproject 项目名称
这个命令会在当前目录下创建一个新的 Django 项目,包含基本的项目结构:
manage.py:项目管理脚本
项目名称/:项目主目录
__init__.py
settings.py:项目设置文件
urls.py:URL 路由配置
wsgi.py:WSGI 应用入口
2.创建新应用django-admin startapp 应用名称
这会创建一个新的 Django 应用,包含:
migrations/:数据库迁移文件目录
__init__.py
admin.py:管理后台配置
apps.py:应用配置
models.py:数据模型定义
tests.py:测试代码
views.py:视图函数
3. 检查项目配置titledjango-admin check
这个命令会检查你的 Django 项目是否有配置错误,包括:
模型定义是否正确
URL 配置是否有效
模板设置是否正确
静态文件配置等
4. 数据库迁移django ...
Django学习一前置条件(python3.9)
安装djangopip install Django
创建项目django-admin startproject (DjangoDemo)←项目名称
#创建完成后的项目目录
$ cd DjangoDemo/
$ tree
DjangoDemo/ # 项目根目录
├── manage.py # 项目管理脚本
├── db.sqlite3 # SQLite 数据库文件
├── __pycache__/ # Python 字节码缓存
└── HelloWorld/ # 项目配置目录(与项目同名)
├── __init__.py # 包标识文件
├── settings.py # 项目设置
├── urls.py # 主路由配置
├── asgi.py # ASGI 配置
└── ...
anzhiyu中使用alphatab实现播放乐谱要在 Hexo 中使用 anzhiyu 主题并实现通过 AlphaTab 播放乐谱,可以按照以下步骤操作。以下是详细的实现方法:
1. 确保 Hexo 和 anzhiyu 主题已正确安装在开始之前,请确认你已经成功安装了 Hexo 和 anzhiyu 主题。如果尚未安装,可以参考以下命令:
# 安装 Hexo
npm install -g hexo-cli
# 初始化 Hexo 项目
hexo init my-blog
cd my-blog
# 安装 anzhiyu 主题
git clone https://github.com/anzhiyu/hexo-theme-anzhiyu.git themes/anzhiyu
然后在 _config.yml 文件中设置主题为 anzhiyu:
theme: anzhiyu
运行以下命令启动本地服务器,确保一切正常:
hexo server
2. 引入 AlphaTabAlphaTab 是一个开源的乐谱渲染和播放库。你需要将其集成到你的 Hexo 博客中。
root/一律代表你的博客根 ...
状态管理Pinia
Pinia是Vue的存储库,它允许跨组件/ 页面共享状态
pinia中的store是模块化的,根据不同的状态划分不同的模块
创建ProductStore 用于存储商品列表状态
// src/stores/ProductStore.js
import { defineStore } from "pinia"
import products from "@/data/products.json"
export const useProductStore = defineStore("ProductStore",{
state: () => {
return {
products,
test:"test"
}
}
})
// src/App.vue
import {useProductStore} from "./stores/ ...
toRef方法
toRef方法用于将响应式数据内部的普通数据转换为响应式数据,并且转化后的数据和原始的数据纯在引用关系,存在引用关系意味着原始数据发生变化后,toRef转换后的数据也会根着变化
export default{
setup(){
const person = ref({name:"张三"})
return { name: toRef(person.value.name)}
}
}
toRefs方法
通过 toRef 方法一次只能转换一个数据,通过 toRefs 方法可以实现批量数据转换。
toRefs 方法接收引用数据类型的响应式数据,它可以将数据中的第一层属性全部转换为响应式数据, 返回值是一个对象, 对象中存储了所有转换之后的响应式数据。
export default {
name: "App",
setup() {
const person = reactive({
...
创建vue项目安装npm install @vue/cli@5.0.4 -g
启动npm run serve
组合式API优势
在选项式API中,它将数据和逻辑进行了分离,所有不相关的数据被放置在了一起,随着应用规模的增加,项目将会变得难以维护
export default{
setup(){
// 属性
// 方法
// 计算属性
// 数据监听
one()
two()
}
}
// 功能1
function one(){
...
}
// 功能2
function two(){
...
}
组合式API入口
setup函数在任何生命周期之前执行,且函数内部this为undefined
setup函数的返回值必须是一个对象,对象的属性会被添加到组件实例对象中,
setup() {
console.log(this);
let name = ref("张三");
let age ...
在 vue 中使用 JSX
目标:学习在 vue 中使用 jsx 语法的方式
认识函数式组件和 JSX
学习 JSX 语法规则和函数式组件的使用方式
① 认识函数式组件和 JSX
React 使用函数式组件和 JSX 构建用户界面,Vue 目前也对函数式组件和 JSX 语法进行了支持。
TSX// 返回 JSX 的函数就是函数式组件
export const LearnJsx = () => {}
TSX// JSX 语法
const jsx = <div>Hello, JSX</div>;
TSX// src/test/LearnJsx.tsx
// 函数式组件, 要求返回用户界面, 而用户界面使用 JSX 进行构建
export const LearnJsx = () => {
// JSX 语法, JSX 和 HTML 很像,但 JSX 是 JavaScript 不是 HTML。
return (
<div>
我是组件 LearnJsx
< ...
在小程序使用vant
小程序初始是没有packback.json文件
使用
npm init --y
// 初始化packback.json
安装 vant组件库
# 通过 npm 安装
npm i @vant/weapp -S --production
# 通过 yarn 安装
yarn add @vant/weapp --production
# 安装 0.x 版本
npm i vant-weapp -S --production
构建npm
删除app.json 中的 “style”:”v2”
使用 API Promise 化
首先下载Promise 包
npm i --save miniprogram-api-promise
构建npm,先前构建过最好先删掉
在全局js中引入
// 按需导入
import { promisifyAll } from 'miniprogram-api-promose'
//声明一个常量,为一个空对象
//并在wx顶级对象下添加一个属性p也指向该空对象,使所有成员都可以使用该对象 ...
组件的创建与引用创建组件
在项目的根目录,创建components 文件夹
在新建components的文件夹 下新建组件文件夹,鼠标右键组件文件夹,点击新建component
之后组件文件夹会自动生成四个文件
局部引入组件在页面的 .json 配置 中引入组件
{
"usingComponents":{
"my-test1":"/components/test/test"
}
}
全局引入组件在app.json全局配置文件中引入组件
"usingComponents":{
"my-test1":"/components/test2/test2"
}
区别
如果某组件只在特定的页面中被用到,建议进行“局部引用”
如果某组件在多个页面中经常被用到,建议进行“全局引用”
组件的 .json 文件中需要声明 “component”: true 属性
组件的 .js 文件中调用的是 Com ...
页面导航声明式导航
跳转到tabbar页面
url 表示要跳转的页面的地址,必须以 / 开头
open-type 表示跳转的方式,必须为 switchTab
导航到非 tabBar 页面da’w’sa’w’d’sa’w’sa’w’d’sa’w
url 表示要跳转的页面的地址,必须以 / 开头
open-type 表示跳转的方式,必须为 navigate
为了方便, 非 tabBar 页码的跳转时 open-type 也可以省略
后退导航
open-type 的值必须是 navigateBack ,表示要进行后退导航
delta 的值必须是数字,表示要后退的层级