从heroku上的django项目中删除某些django应用,并将其从以后的推送中排除

时间:2019-04-01 20:18:23

标签: django heroku

在名为website的django项目中,我有两个应用app1app2。我想让app2仅可通过本地计算机访问。我不希望通过我的网站在线app2公开访问。我已经将整个website推送到了heroku。因此,如何从heroku app2中删除website并避免将来再将app2推送到heroku。

我尝试了以下操作:

  1. app2/添加到了.gitignore。因此避免了将来的变化。但是app2的当前版本仍然存在于heroku website上。
  2. 我在本地计算机上删除了app2,并试图推送更改,但是在静态集合中收到错误消息,说不存在名为app2的应用。

我还想避免通过我的网站提供Django的默认管理功能。我也想将其保留在本地。 谢谢

1 个答案:

答案 0 :(得分:2)

我会将两个应用都置于版本控制下,然后通过设置来控制差异。例如,如果仅在本地设置调试:

settings.py

if settings.DEBUG:
    INSTALLED_APPS += ['app2']

urls.py

from django.conf import settings

if settings.DEBUG:
    urlpatterns = [
        include('app2/', include('app2.urls')),
    ] + urlpatterns

这只是一个示例,在不了解您的项目的情况下,很难确切地显示如何执行该项目。但是在此示例中,只有在app2设置为DEBUG时,True才会被加载并具有可用的路由。