数据库迁移时出现:ImportError: DLL load failed while importing _rust: 找不到指定的程序。错误解决

数据库迁移时出现:ImportError: DLL load failed while importing _rust: 找不到指定的程序。错误解决问题思路

当在虚拟环境中下载完成依赖,进行数据库迁移时
python manage.py makemigrations

出现了该错误,分析整体报错信息我们发现

当执行 _rust 时,出现了找不到制定程序的错误,而 _rust 出现在了cryptography这个软件包中,由此可得,cryptography软件包是问题的根源。

而 DLL load failed 这类错误,主要的出现原因是python版本与软件包版本不兼容,所以,我们的纠错思路则是更改cryptography软件包的版本。

第一步:

查看 cryptography软件包的版本

pip list

找到 cryptography ,可以看到,我的版本为42.0.8,这是一个相对较新的版本,而我的python版本为3.9.0,可以通过以下代码查看python版本

python -v

 接下来,就需要对该软件包进行版本降级

第二步:

删除当前版本的 cryptography软件包

pip uninstall cryptography

第三步:

找到兼容自己python版本的cryptography 版本,python3.9.0版本可兼容的cryptography版本为41版本,下载该版本的cryptography软件包

pip install cryptography==41.0.2

 第四步:

运行数据库迁移

python manage.py makemigrations
python manage.py migrate

 若依旧还是该问题,则根据以上思路进行解决。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值