我有一个用Django编写的应用程序,它现在已经变得相当大了,这个应用程序整天都在使用,并且会造成变化--“在运行中”的风险中断。
我对软件开发相当陌生,不知道最好的方法是开发django应用程序,在那里我可以发布组合在一起的更新并发布一个“版本”。因此,我不想在活动环境中更新主应用程序,而是希望有一个开发服务器,在那里可以开发和测试任何更新,然后每月推出一次。
我只需复制视图/模型文件并覆盖旧的文件,但是处理数据库更改的最佳方法是什么?我假设我必须编写SQL来添加/删除已更改的列并完全覆盖django_content_type表?
任何建议都要感谢!
发布于 2014-08-05 15:09:24
我要比Ashish更进一步:您必须使用版本控制。您不应该“复制文件”和覆盖旧文件。2014年,没有理由不使用git (或汞,甚至SVN)之类的东西。
当然,对于数据库更改,您应该使用迁移。在即将发布的1.7版中,这些内容都包含在核心Django中。在以前的版本中,您需要安装第三方库South。
发布于 2014-08-05 15:04:16
对于源文件,您可以使用git。您可以在dev (或test)服务器上测试您的更改,一旦满意,就将更改推送到git。然后,在prod服务器上,提取更改并重新启动服务器。
数据库更改可以使用south和迁移来完成。同样,在将迁移推到git之前,需要在dev上测试迁移或进行测试。一旦您满意,您就可以将更改移动到prod。
水流是..。
develop --> test --> commit changes to remote git --> pull changes on production --> migrate --> restart server在这里寻找重要的链接
https://stackoverflow.com/questions/25142071
复制相似问题