Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
开发Django应用程序,在本地托管敏感数据库数据_Django_Database_Git_Sqlite - Fatal编程技术网

开发Django应用程序,在本地托管敏感数据库数据

开发Django应用程序,在本地托管敏感数据库数据,django,database,git,sqlite,Django,Database,Git,Sqlite,我目前正在开发一个Django应用程序,该应用程序只在本地托管,在工作时放在笔记本电脑上。我一直在自己的笔记本电脑上编写和测试代码,并将代码推送到私人BitBucket存储库中进行基本版本控制。最终,部署机器上的数据是敏感的,因此我一直在我的开发机器上使用虚拟数据(我也不能在我的开发机器上使用敏感数据-它必须只驻留在部署机器上) 我现在已经有效地将应用程序代码镜像到部署机器上,并在该机器上手动输入敏感数据,因此我在目标笔记本电脑上有效地拥有一个与我的开发机器上的应用程序相同的工作应用程序,只是数

我目前正在开发一个Django应用程序,该应用程序只在本地托管,在工作时放在笔记本电脑上。我一直在自己的笔记本电脑上编写和测试代码,并将代码推送到私人BitBucket存储库中进行基本版本控制。最终,部署机器上的数据是敏感的,因此我一直在我的开发机器上使用虚拟数据(我也不能在我的开发机器上使用敏感数据-它必须只驻留在部署机器上)

我现在已经有效地将应用程序代码镜像到部署机器上,并在该机器上手动输入敏感数据,因此我在目标笔记本电脑上有效地拥有一个与我的开发机器上的应用程序相同的工作应用程序,只是数据库的内容不同

我需要能够继续在我的开发机器上开发新功能—使用虚拟数据—并且我希望能够通过远程存储库推送到部署机器。我遇到的问题是,如果简单地使用gitignore来阻止推送包含伪数据的db.sqlite,那么数据库就不同步,一些新功能可能包括更改或添加数据库模式—添加表和字段等

我可以继续这样做,但只能将应用程序代码拉到部署机器上,并在部署时手动更改db.sqlite,但这既繁琐又容易出错


我不完全确定是否有一个纯粹基于git的解决方案来解决这个问题,还是一个基于Django的解决方案:不幸的是,我不是这两方面的专家,所以欢迎任何意见!谢谢。

您要做的是使用数据库迁移。从1.7开始,它们是Django不可分割的一部分,如下所示:

如果您使用的是1.7之前的Django版本,那么您需要了解South: