2012-04-16 124 views
0

我有一个简单的Django网站(只是一种形式,真的),它提出了一些问题并使用Model.save()将数据保存在SQL数据库中。很简单。我想添加一个模型来进行页面计数,但它只是一个单个的对象,每次页面的视图函数被调用时,都会增加一个字段。Django - 在不丢失数据的情况下将数据添加到数据库

现在,我对SQL一无所知。我想这并不难,但是我想避免因为对数据库工作方式的轻微误解而丢失或破坏我的所有数据。那么我该怎么做呢?我听说过一些第三方应用程序会实现这样的功能,但我只是为了学习目的而自己做。

回答

2

我不明白为什么您的现有数据会受到影响。你正在谈论的是在数据库中添加一个全新的表格,Django支持这个表格,只需运行manage.py syncdb即可。这种情况不起作用的是当你修改现有的表格,但你没有这样做。

我必须说虽然学习和使用South会在任何情况下都有好处。有一个可以维护模型表的工具是一个很好的习惯。

(当然,你永远不会丢失任何数据,因为你的数据库已经备份了,对不对?)

+0

太好了,非常感谢。我没有意识到,syncdb不会重置所有内容。 – Peter 2012-04-16 22:13:52

1

由于您正在添加新模型,因此您可以运行syncdb,它将为您的模型创建新表格。如果要更改现有模型,则需要使用“ALTER TABLE”语句手动更新数据库模式,或使用South代替。

相关问题