Django 数据库添加字段

在Djangobook的第十章讲到数据库添加字段的问题:使用的技巧是利用Django不关心表里是否包含model里所没有的列的特性。策略就是现在数据库里加入字段,然后同步... 在Django book的第十章讲到数据库添加字段的问题:
使用的技巧是利用Django不关心表里是否包含model里所没有的列的特性。 策略就是现在数据库里加入字段,然后同步Django的模型以包含新字段
然后后面就是一大段方法。
1.首先,进入开发环境(也就是说,不是在发布环境里):在你的模型里添加字段。

2.运行 manage.py sqlall [yourapp] 来测试模型新的 CREATE TABLE 语句。 注意为新字段的列定义。

3.开启你的数据库的交互命令界面(比如, psql 或mysql , 或者可以使用 manage.py dbshell )。 执行ALTER TABLE 语句来添加新列。

4.使用Python的manage.py shell,通过导入模型和选中表单(例如, MyModel.objects.all()[:5] )来验证新的字段是否被正确的添加 ,如果一切顺利,所有的语句都不会报错。

然后在你的产品服务器上再实施一遍这些步骤。

1.启动数据库的交互界面。

2.执行在开发环境步骤中,第三步的ALTER TABLE语句。

3.将新的字段加入到模型中。 如果你使用了某种版本控制工具,并且在第一步中,已经提交了你在开发环境上的修改,现在,可以在生产环境中更新你的代码了(例如,如果你使用Subversion,执行svn update。

4.重新启动Web server,使修改生效。

我的理解就是,先在数据库里添加字段,然后再修改模型代码,那这是否意味着,我可以直接利用数据库的管理工具直接添加字段,然后再直接修改模型代码呢?(上面的方法也太啰嗦了)
展开
 我来答
271680114
2013-08-20 · TA获得超过466个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:206万
展开全部
你说对了,假设你用数据库管理工具的话,你要先选择你工程所对应的数据库,比如mysql,直接用控制台操作的话,你需要先执行use yourdb,而用manage.py dbshell会自动链接到你用的数据库,省了输入用户名密码和use yourdb的过程。
睿思博信
2013-08-19 · TA获得超过142个赞
知道答主
回答量:73
采纳率:0%
帮助的人:33.8万
展开全部
Django默认的ORM做的算是完善了,建议你直接在模型中操作,不要直接操作表结构,这样容易导致问题发生~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式