Py学习  »  问与答

Django1.7 修改MySQL已存在表的问题?

zhghg • 9 年前 • 4378 次点击  

由于本人是菜鸟,在已经生成了models.py中表的情况下,更改了modes.py中的表,但是syncdb不起作用报错。 于是我用了个死方法,登录MySQl手动把表删了,也删了应用中migrations文件夹,然后再进行 makemigrations , migrate 和 syncdb,但是去mysql中查看并没有创建相应的表。

后台登录显示: ProgrammingError at /admin/home/article/ (1146, "Table 'alwme_db.home_article' doesn't exist")

(alwme)zhg@hang:~/alwme/alwme$ python manage.py makemigrations home Migrations for 'home': 0001_initial.py: - Create model Article

(alwme)zhg@hang:~/alwme/alwme$ python manage.py migrate Operations to perform: Apply all migrations: admin, home, contenttypes, auth, sessions Running migrations: No migrations to apply.

(alwme)zhg@hang:~/alwme/alwme$ python manage.py syncdb Operations to perform: Apply all migrations: admin, home, contenttypes, auth, sessions Running migrations: No migrations to apply.

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1058
 
4378 次点击  
文章 [ 4 ]  |  最新文章 8 年前
673890989
Reply   •   1 楼
673890989    8 年前

在django1.8中我也遇见这种问题,我是删除了migrations目录中init.py 的文件,然后成功创建的数据表,咋回事?

younger.x.shen
Reply   •   2 楼
younger.x.shen    8 年前

低版本用south, 高版本用自带的migrate

狂飙的yellowcong-weibo
Reply   •   3 楼
狂飙的yellowcong-weibo    9 年前

如果还有不懂的,问你聪哥!

狂飙的yellowcong-weibo
Reply   •   4 楼
狂飙的yellowcong-weibo    9 年前

哈哈! 你这个问题很简单,是有缓存引起的,在创建表的时候,他会先看看migration目录中是存在我们的修改,然后 再去弄到数据库

解决办法 在migrations目录中,删除除init.py 的文件