数据迁移

 

python manage.py db migrate -m 'init'

INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.autogenerate.compare] Detected added table 'auth'
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions/0642caacec3e_init.py ...  done

1 初始化仓库 在初始化的时候只执行一次就可以了

python manage.py db init
  Creating directory /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations ...  done
  Creating directory /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions ...  done
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/README ...  done
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/script.py.mako ...  done
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/env.py ...  done
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/alembic.ini ...  done
  Please edit configuration/connection/logging settings in '/home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/alembic.ini' before proceeding.

2 迁移模型类

 python manage.py db migrate -m 'init'
    
INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.autogenerate.compare] Detected added table 'book'
INFO  [alembic.autogenerate.compare] Detected added table 'user'
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions/e6f1febdcc52_init.py ...  done

3 映射到数据库

python manage.py db upgrade

INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> e6f1febdcc52, init

添加表 再次执行 后两步(修改表也是相同)

 

python manage.py db migrate -m 'init'

INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.autogenerate.compare] Detected added table 'auth'
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions/0642caacec3e_init.py ...  done

python manage.py db migrate -m 'init'

INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.autogenerate.compare] Detected added table 'auth'
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions/0642caacec3e_init.py ...  done

修改表:

 python manage.py db migrate -m 'init'
    
INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.autogenerate.compare] Detected added column 'auth.book_id'
INFO  [alembic.autogenerate.compare] Detected added foreign key (book_id)(id) on table auth
  Generating /home/wang/Desktop/staudy_zhilao/mig_fk_two/migrations/versions/4e4fb4378a34_init.py ...  done
版本修改:
    python manage.py db upgrade
    
INFO  [alembic.runtime.migration] Context impl MySQLImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade 0642caacec3e -> 4e4fb4378a34, init

关于模型类的创建:

建议 外键和 关系依赖分开创建

posted @ 2020-04-21 13:20  行走的ID  阅读(270)  评论(0)    收藏  举报