Django - 面料和面料collecstatic - 无法打开文件“manage.py”

发布于 2024-12-11 18:20:31 字数 990 浏览 0 评论 0原文

我开始使用 Fabric 作为 Django 生产服务器。
这是我的 fabfile.py

from fabric.api import *
env.hosts = ['[email protected]']
def srefresh():
  with path('~me/myproject'):
    run('python manage.py collectstatic')
    sudo('apachectl restart')

,这是输出

$ fab srefresh
[[电子邮件受保护]] 执行任务“srefresh”
[[电子邮件受保护]] 运行: python manage.pycollectstatic
[[电子邮件受保护]] out:python:无法打开文件' manage.py': [Errno 2] 没有这样的文件或目录

我做错了什么?
(不确定我是否很好地使用了 with 上下文管理器)

I'm begining to use Fabric for a Django production server.
Here is my fabfile.py

from fabric.api import *
env.hosts = ['[email protected]']
def srefresh():
  with path('~me/myproject'):
    run('python manage.py collectstatic')
    sudo('apachectl restart')

And here is the output

$ fab srefresh
[[email protected]] Executing task 'srefresh'
[[email protected]] run: python manage.py collectstatic
[[email protected]] out: python: can't open file 'manage.py': [Errno 2] No such file or directory

What am I doing wrong ?
(not sure I'm using the with context manager well)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

不寐倦长更 2024-12-18 18:20:31

实际上,它在文档中写得非常清楚。 fabric.context_managers.path 更改 PATH 变量。 fabric.context_managers.cd 可用于更改远程目录。所以在你的情况下:

def srefresh():
    with cd('~me/myproject'):
        run('python manage.py collectstatic')

应该可以解决问题。

Actually, it's quite clearly written in the docs. fabric.context_managers.path alters the PATH variable. fabric.context_managers.cd can be used to change the remote directory. So in your case:

def srefresh():
    with cd('~me/myproject'):
        run('python manage.py collectstatic')

should do the trick.

不乱于心 2024-12-18 18:20:31

您是否尝试过

run('python ./manage.py collectstatic')

同时检查manage.py的权限

Have you tried with

run('python ./manage.py collectstatic')

Also check the permissions of manage.py

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文