如何(有意)跳过使用Django syncdb的应用程序
发布时间:2020-12-20 11:25:17 所属栏目:Python 来源:网络整理
导读:我有几个 django应用程序: INSTALLED_APPS = ( 'geonode.exposure','geonode.isc_viewer','geonode.geodetic','geonode.observations','geonode.ged4gem', 我需要管理所有这些,除了一个syncdb. 如何让syncdb有意跳过geonode.exposure应用程序? 更新: 我没
我有几个
django应用程序:
INSTALLED_APPS = ( 'geonode.exposure','geonode.isc_viewer','geonode.geodetic','geonode.observations','geonode.ged4gem', 我需要管理所有这些,除了一个syncdb. 更新: class GedRouter(object): def db_for_read(self,model,**hints): "Point all operations on ged models to 'geddb'" if model._meta.app_label == 'exposure': return 'geddb' return 'default' def allow_syncdb(self,db,model): if db == 'geddb' or model._meta.app_label == "ged": return False # we're not using syncdb on our legacy database else: # but all other models/databases are fine return True 南不尊重allow_syncdb方法吗?是曝光应用程序南部运行syncbd因为我没有迁移它? 解决方法
您可以在模型的Meta类中使用managed = False.这样,syncdb将不会创建应用程序的表.有关
documentation的更多信息.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |