flask - heroku部署:运行命令 heroku run python manage.py deploy得到如下错误,求助?谢谢
怪我咯
怪我咯 2017-04-18 09:30:51
0
1
632

错误日志如下,代码是copy《flask web 开发》

lanxiang@machine:~/bushu2$ heroku run python manage.py deploy
Running python manage.py deploy on ⬢ x1996... up, run.8593
INFO  [alembic.migration] Context impl PostgresqlImpl.
INFO  [alembic.migration] Will assume transactional DDL.
INFO  [alembic.migration] Running upgrade None -> f3893df0869f, init migrations
Traceback (most recent call last):
  File "manage.py", line 81, in <module>
    manager.run()
  File "/app/.heroku/python/lib/python2.7/site-packages/flask_script/__init__.py", line 405, in run
    result = self.handle(sys.argv[0], sys.argv[1:])
  File "/app/.heroku/python/lib/python2.7/site-packages/flask_script/__init__.py", line 384, in handle
    return handle(app, *positional_args, **kwargs)
  File "/app/.heroku/python/lib/python2.7/site-packages/flask_script/commands.py", line 145, in handle
    return self.run(*args, **kwargs)
  File "manage.py", line 71, in deploy
    upgrade()
  File "/app/.heroku/python/lib/python2.7/site-packages/flask_migrate/__init__.py", line 98, in upgrade
    command.upgrade(config, revision, sql = sql, tag = tag)
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/command.py", line 124, in upgrade
    script.run_env()
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/script.py", line 199, in run_env
    util.load_python_file(self.dir, 'env.py')
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/util.py", line 199, in load_python_file
    module = load_module(module_id, path)
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/compat.py", line 55, in load_module
    mod = imp.load_source(module_id, path, fp)
  File "migrations/env.py", line 72, in <module>
    run_migrations_online()
  File "migrations/env.py", line 65, in run_migrations_online
    context.run_migrations()
  File "<string>", line 7, in run_migrations
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/environment.py", line 652, in run_migrations
    self.get_context().run_migrations(**kw)
  File "/app/.heroku/python/lib/python2.7/site-packages/alembic/migration.py", line 225, in run_migrations
    change(**kw)
  File "migrations/versions/f3893df0869f_init_migrations.py", line 27, in upgrade
    op.create_index(op.f('ix_roles_default'), 'roles', ['default'], unique=False)
AttributeError: 'module' object has no attribute 'f'
怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(1)
迷茫

데이터베이스 마이그레이션 문제여야 합니다. 이 단계에서는 마이그레이션 파일을 수정하는 것이 다소 어려울 수 있습니다.

학습 단계이기 때문에 일시적으로 데이터베이스에 중요한 데이터가 없다고 생각되므로 다음과 같이 하시기를 권장합니다.

  1. 로컬 데이터베이스 삭제

  2. 이전 폴더 삭제

  3. 배포 재시도

참고용으로 내 블로그의 기사를 제공합니다. 포괄적이지는 않지만 이해하는 데 도움이 될 것입니다.

제가 개인적으로 글에서 제시한 제안은 정말 중요하다고 생각합니다. 읽은 후 삭제하고 재배포하는 것이 좋습니다.

Flask 데이터베이스 마이그레이션 및 배포 경험

관심 있으신 분은 당시 포럼에 올라온 제 답변을 참고하시면 이해가 쉬울 것입니다.

다음은 몇 가지 팁입니다.

  1. 오류 메시지 읽는 법 배우기

  2. Migration 기능에 대한 이해가 필요합니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿