由于django的项目不是新建的,之前的之行过
python manage.py makemigrations
python manage.py migrate
的语句。
(1)所以当我再次再mysql数据库中建立新的数据库时,执行上面的两句时,并没有什么卵用!!!只建立了下面几个表格
| blog_blog |
| blog_blog_tag |
| blog_category |
| blog_comment |
| blog_tag |
(2)查阅了网上的资料,说删除app文件夹中的migrations中的所有文件,但是也只能在数据库中建立除了第(1)步中的数据表的表
+---------------------------------+
| Tables_in_myblog_master_v4_temp |
+---------------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
+---------------------------------+
由上面看得出,没有models.py中对应的表。
(2)因为上面执行python manage.py makemigrations时,没有检测到什么,所以我用了比较笨的方法,首先把models.py的每个字段都修改名字,执行一遍python manage.py makemigrations appname,再把models.py的每个字段的名字改回来自己需要的,执行一次python manage.py makemigrations apname和python manage.py migrate。之后mysql数据库中的表就都有了。
+---------------------------------+
| Tables_in_myblog_master_v4_temp |
+---------------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| blog_blog |
| blog_blog_tag |
| blog_category |
| blog_comment |
| blog_tag |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
+---------------------------------+
原因:
之所以会碰到这个问题,是一开始我的mysql数据库里面对应的数据库只有
| blog_blog |
| blog_blog_tag |
| blog_category |
| blog_comment |
| blog_tag |
这几个表,所以登录admin后台时就不成功(我是用apache服务器代替了开发服务器,登录网址为192.168.1.108/admin),只有换回开发服务器才能成功登录admin后台。所以我把对应app下的migrations文件夹中的文件全部删除了,但是就出现了上面的问题。
原文:http://www.cnblogs.com/lijimmy/p/6361707.html