Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Django中修改列规格的最佳方法_Django_Postgresql_Heroku - Fatal编程技术网

在Django中修改列规格的最佳方法

在Django中修改列规格的最佳方法,django,postgresql,heroku,Django,Postgresql,Heroku,我正在使用Django与Postgres和Heroku。我有一张像这样的桌子 class Post( models.Model ): . . content1 = models.CharField(max_length=1000) . 我的一个朋友告诉我限制太小了,现在我想把maxlength改为10000。有一种方法我可以考虑交替创建一个名为content2的新列,然后从content1复制内容,然后删除content1。我对这个问题

我正在使用Django与Postgres和Heroku。我有一张像这样的桌子

 class Post( models.Model ):
       .
       .
       content1 = models.CharField(max_length=1000)
       .
我的一个朋友告诉我限制太小了,现在我想把maxlength改为10000。有一种方法我可以考虑交替创建一个名为content2的新列,然后从content1复制内容,然后删除content1。我对这个问题相当陌生,我想知道解决这个问题的最佳方法是什么


还有,10000是一篇博文的好长度吗D

您可以使用dumpdata将数据保存到json文件中,并在重新创建后重新加载,也可以使用新参数手动更改表。或者你可以使用南方

South为django提供了数据库迁移(称为更改表布局)

pip install south
将south添加到已安装的应用程序,然后运行

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”命令。

这并不能直接解决您的问题,但
模型。TextField
CharField
更适合博客文章。