我正在使用Django和Postgres以及Heroku。我有一个看起来像这样的帖子表。
class Post( models.Model ):
.
.
content1 = models.CharField(max_length=1000)
.
我的一个朋友告诉我限制太小,现在我想将maxlength更改为10000.我可以考虑通过创建一个名为content2的新列来交替表,然后从content1复制内容,然后删除内容1。我对此很新,并且想知道解决这个问题的最佳方法是什么。
对于博客文章来说10000也是一个很好的长度? :d
答案 0 :(得分:1)
您可以使用dumpdata将数据保存到json文件并在重新创建后重新加载它,也可以使用新参数手动更改表。或者你可以使用南方。
South为django提供数据库迁移(称为更改表格布局)。
pip install south
将南方添加到INSTALLED_APPS然后运行
python manage.py schemamigration --initial your_app_name
python manage.py migrate --fake your_app_name
对models.py进行更改,然后运行
python manage.py schemamigration --auto your_app_name
python manage.py migrate your_app_name
现在,如果要在多台计算机上更改相同的数据库布局,请将创建的迁移文件签入git并在需要更新的所有计算机上运行“migrate”命令。