#查看设置源等
pip config list
#设置源
pip config set global.index-url https://pypi.org/simple
#查看已安装的包
pip list
#安装
pip install xyz
#卸载
pip uninstall xyz
分类: 程序
mac 装 python 版本切换
brew install pyenv
echo $SHELL
查看使用的是 zsh 还是bash
vi ~/.zshrc
或者
vi ~/.bash_profile
#结尾加
# pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
source ~/.zshrc
exec zsh
或者
source ~/.bash_profile
pyenv install --list
#选择并安装目标Python版本。例如,要安装Python 3.7,可以运行以下命令:
pyenv install 3.7.12
#设置全局的Python版本:
pyenv global 3.7.12
#或者,你也可以在特定目录中设置局部的Python版本:
pyenv local 3.7.12
#其它命令
pyenv local --unset
python --version
虚拟环境
#创建虚拟环境
python -m venv --system-site-packages ./venv
#进入虚拟环境
source ./venv/bin/activate
#退出虚拟环境
deactivate
扩张参数必须具有元组类型或传递给 rest 参数
const setSelected = (selected: Record<string, any>, point?: Record<string, any>) => {}
setSelected(...[ {}, {}] ) as Parameters<typeof setSelected>);
宝塔部属umijs/max/node项目
umijs/max或者node项目,用npm build生成dist文件夹,把dist文件夹传到宝塔网站wwwroot文件夹下。
宝塔安装nodejs管理器。
网站,node项目,先安装node版本,添加node项目。
项目目录:/www/wwwroot
dist是上传的文件夹名,启动命令:serve dist
项目端口:3000
保存配置,然后点新加的网站,点名称进入网站设置。
模块管理,输入serve,安装模块。
服务状态启动服务就可以访问已绑定的域名了。
umijs/max获取url参数
获取search参数,问号?后面的参数转对象。
Object.fromEntries(createSearchParams(location.search).entries())
获取projects/id/version/vid的id对象。
useParams()
pgAdmin改Enum的type
pgAdmin4、PostgreSql、Sequelize无法修改Enum的Type问题
pgAdmin4的Table里只能Columne只能看到Enum的字段,但是无法修改Type。删掉重新建字段也不行。
重点:不在Table里,在Table下面有个Types,好大的坑。
Sequelize嵌套时当include的主题可能为null时
include下条件查询并且允许为空
添加required: false即可。
const where = {
[Op.and]: [
s && {
[Op.or]: {
name: {
[Op.substring]: s
},
mobile: {
[Op.substring]: s
}
}
},
]
};
include: {
...(!s && {required: false}),
model: Account,
where,
attributes: ['name', 'mobile'],
},
umijs max React 的代码打包多份再运行react找不到问题
mf-dep____vendor.80125e40.js:263462 Warning: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
- You might have mismatching versions of React and the renderer (such as React DOM)
- You might be breaking the Rules of Hooks
- You might have more than one copy of React in the same app
See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.
Uncaught TypeError: Cannot read properties of null (reading ‘useContext’)
根因在某些复杂场景下,React 的代码被打包多份,再运行时产出了多个 React 实例。解法通过 Module Feratation 的 shared
配置来避免多实例的出现。 如果有其他依赖出现多实例的问题,可以通过类似的方式解决。
在config/config.ts文件里加mfsu的配置
mfsu: {
shared: {
react: {
singleton: true,
},
},
},
sequelize:如何在include中attributes重命名列
User里的type字段重命名为type,放到account同级属性下
User的attributes给一个空数组,返回数据格式则不带User的数据。
const account = await Account.findByPk(id, {
attributes: ['id', [Sequelize.col('"User"."type"'), 'type']],
include: {
model: User,
attributes: [],
},
});
重命名modal。
account的modal文件里。
Account.hasOne(models.User, {
as: 'user',
foreignKey: 'id',
sourceKey: 'userId',
});
使用,注意User改成小写user了。
attributes: ['id', 'userId', [Sequelize.col('"user"."type"'), 'type']],
include: {
model: User,
as: 'user',
attributes: [],
},
sequelize 排序字段null时排序
Sequelize降序排序空值在后面
order: [
['last_access_timed_at', 'DESC NULLS LAST'],
]
Sequelize升序排序空值在前面
order: [
['last_access_timed_at', 'ASC NULLS FIRST'],
]
同理DESC,ASC,FIRST,LAST自由组合。