2017-09-27 22 views
0

그것은 나에게 출력을 제공합니다왜 alembic 마이그레이션에 문제가 있습니까? 내가 명령</p> <pre><code>alembic revision --autogenerate -m "Reconciliation and daily amount tables" </code></pre> <p>을 넣을 때

sudo: alembic: command not found 

을하지만 pip install alembic을하려고 할 때 - 그것은 나에게 말한다 : 나는 sudo를 함께하려고하면

INFO [alembic.runtime.migration] Context impl PostgresqlImpl. 
INFO [alembic.runtime.migration] Will assume transactional DDL. 
ERROR [alembic.util.messaging] Can't locate revision identified by '67ad9835cada' 
    FAILED: Can't locate revision identified by '67ad9835cada' 

을, 내가 가진 그 requirment는 이미 만족했다. 그래서 문제의 원인은 무엇입니까?

+1

try pip2 alembic을 설치하면 Python3이 Linux 버전에서 기본값이 될 수 있습니다. – CodeLikeBeaker

+0

@ CodeLikeBeaker 고맙습니다 만 문제를 해결할 수 있습니다 : alembic으로 작업 할 때'sudo'를 사용해서는 안됩니다. 왜냐하면 전역 적으로 명령을 찾으려고하기 때문이죠.하지만 저는 가상 환경에서 작업하고 있습니다. 문제는 alembic 리비전과 관련이 있습니다 :'alembic_version'에있는 제 데이터베이스에서 (아마도) 내가 삭제 한 몇 가지 리비전에 대한 정보가 있습니다. 그래서 나는 그 테이블을 깨끗하게하고 개정합니다. – Klimenkomud

+0

@Klimenkomud 안녕하세요,이 질문을 해결 된 것으로 표시 할 수 있습니까? (자신의 질문에 대답) 감사합니다 – Ehvince

답변

1

문제점이 수정본 스크립트 디렉토리에 없습니다. 어떤 식 으로든 일부 수정본을 잃어버린 경우 - alembic stamp 67ad9865deca 명령을 사용할 수 있습니다. 67ad9865deca 데이터베이스의 수정본 머리말 (즉, 수정본이 더 많고 마이그레이션을 수행하지 않을 경우)을 의미합니다. 또는 데이터베이스에서 tabla alembic_version을 지우십시오.이 경우에는 아직 마이그레이션을 수행하지 않았 음을 알렘에 알릴 것입니다.