gpt4 book ai didi

python - 液晶显示器上下文切换器在结构中不起作用

转载 作者:行者123 更新时间:2023-12-01 05:10:27 25 4
gpt4 key购买 nike

我正在使用 python3.2 运行 Django,最近发现 Fabric 不支持 Python3。

因此,我创建了第二个虚拟环境 (fabric-env),只是为了运行 Fabric。

这是 virtualenv 的 fab --version 输出:

Fabric 1.9.0
Paramiko 1.14.0

python --版本

Python 2.7.3

我的 fab 文件如下所示(仅相关行):

from fabric.api import local

def deploy(branch_name):
with lcd('/var/www/finance'):
local('git pull /home/user1/dev/' + branch_name)
local('/var/www/finance/finance-env/bin/python3 manage.py test corefinance')
local('/var/www/finance/finance-env/bin/python3 manage.py schemamigration corefinance --auto')
local('/var/www/finance/finance-env/bin/python3 manage.py migrate corefinance')
local('sudo service apache2 restart')

当我运行此部署函数时,出现以下错误:

File "/var/www/finance/fabfile.py", line 19, in deploy
with lcd('/var/www/finance'):
NameError: global name 'lcd' is not defined

结构文档说这个功能应该可用。看来 Fabric 和 Python 都足够新(只是为了确保 Fabric 不会尝试在不同的 Python 上运行,我在虚拟环境内部和外部都运行了这个函数)。

Google 上没有搜索到该错误消息...

最佳答案

您尚未导入lcd。将以下内容添加到文件顶部:

from fabric.context_managers import lcd

关于python - 液晶显示器上下文切换器在结构中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24331779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com