开发者

How to continue developement of live Django Webapp?

I am building a Django powered web app that has a large database component. I am wondering, how would I go about continuing to develop the web app while users are using the live, production version? There are two parts to the problem, as I see it, as follows:

  1. Making changes to templates, scripts, and other files
  2. Making database schema changes

Now, the first problem is easy to manage with a SVN system. Heck, I could just have a "dev" directory which have all my in-development files and, once ready, just copy them into the "production" directory.

However, the second problem is more co开发者_开发知识库nfusing to me. How do I test/develop new database changes without affecting the main/live database? I have been using South to do schema migrations during the initial creation stages of the web app, but surely I wouldn't want to make changes to the database while it is being used. Especially if I make changes that I don't want to keep.

Any thoughts/ideas?


You need another server on which to do your development. Typically, this is a personal machine, like your laptop. Often, you also have a copy of your production environment on a server, known as the staging server.

Your workflow would be like this:

  • Work on your code on your development machine, make all the changes you want, it's just you using it.

  • When the code is ready for production, you push it to the staging server to see that it really works properly in a server environment.

  • When you're sure it's ready for production, push it to the production server.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜