如何在本地django实例上自动运行collectstatic?

时间:2013-08-20 20:35:33

标签: python django heroku

在Django项目的本地开发中,我的工作流程目前是:

  1. 进行更改。
  2. 使用虚拟环境转到终端会话。用ctrl + C停止领班。
  3. 键入python manage.py collectstatic以移动所有静态css / js / img文件。
  4. 使用foreman start重启领班。
  5. 为了提高效率并更好地学习,我想知道如何优化工作流程更像是这样:

    1. 进行更改。
    2. 运行一个移动静态文件并重新启动foreman的命令。
    3. 有人能够指出我正确的方向。感谢。

2 个答案:

答案 0 :(得分:0)

您可以创建一个bash脚本,为您执行这一系列的动作。

虽然我没有工头经验,但您可以使用以下内容创建脚本:

#!/bin/bash
sudo killall foreman
python manage.py collectstatic
foreman start

然后为其添加执行权限:

chmod +x script.sh

并在一个命令中执行所有操作:

./script.sh

答案 1 :(得分:0)

我认为你绝对不能使用工头进行本地开发,否则你甚至不需要进行收集或手动重启。

也许基于runserver编写自定义管理命令是你的选择,因为它已经有了check-for-change-restart逻辑。

https://docs.djangoproject.com/en/dev/howto/custom-management-commands/

https://github.com/django/django/blob/master/django/core/management/commands/runserver.py?source=cc