플러그인 제작 중 모델 수정을 데이터베이스에 적용하는 방법

플러그인 제작 중 모델 수정을 데이터베이스에 적용하는 방법

QA

플러그인 제작 중 모델 수정을 데이터베이스에 적용하는 방법

답변 3

본문

안녕하세요.

 

플러그인을 제작하고 있습니다.

 

모델을 제작하면 자동으로 DB에 적용이 되어 테이블이 생성되던데,

 

그 모델을 수정하면 테이블이 수정되지 않아서요.

 

테이블을 수정하는 방법알려주시면 감사드리겠습니다~

이 질문에 댓글 쓰기 :

답변 3

그누보드6에서는 테이블을 수정하는 기능을 지원하고 있지 않습니다.

수동으로 테이블 삭제 후 재실행하시기를 권장합니다.

 

설명 : 

현재 그누보드6에서 사용되는 SQLAlchemy에서 직접적인 테이블의 구조를 변경하는 방법을 지원하고 있지 않습니다.

아래와 같은 방법들로 테이블을 자동으로 변경 할 수 있지만 각각의 문제점으로 인해 적용이 어려운 상황입니다.

 

1. DB 마이그레이션 도구인 Alembic을 사용

    => 현재 그누보드6에서 사용하지 않음

2. 직접 SQL 명령을 수행

    => 유지보수 어려움, 각 데이터베이스 마다 SQL문법이 일부 다름

3. 모델 변경 시, 기존 테이블 삭제 후 재 생성

    => 데이터 망실의 가능성 높음

넵 안그래도 테이블 삭제하고 재실행하는 방법을 쓰고 있는데,

만약 배포 중에 테이블을 변경한다면,

1) DB 데이터를 dump 시켜놓고 테이블 재생성 후 적용해야할까요?
2) 또는 DB에 접근해서 직접 Table 구조를 변경하면 충돌하는 부분이 있을까요?

DB는 Mysql 을 사용할 예정입니다.

* 그누보드를 Python으로 이용할 수 있어서 너무 행복합니다. 감사합니다~

직접 접근해서 Table 구조를 변경한 후
모델도 변경된 부분을 반영한다면 딱히 문제될 것은 없어 보입니다.

1번은 번거로운 작업이 될 것 같아서 권장하지 않지만.. ㅠ

그래도 변경하실때는 안전하게 dump하시는게 좋을 것 같습니다

mysql 에서 update 쿼리문 검색해보세요.

그리고 이렇게 질문하시면 의도를 명확하게 알수가 없습니다.

 

어떤 환경으로 어떻게 저장이되고 있는지

하다못해 URL 이라도 기재 해야 하는데

질문이 너무 성의가 없네요.

아... 글쎄요... 전혀 동의가 안되는데요...
그누보드6 플러그인 제작해본거 맞으세요?
Fastapi 써보시면 무슨 말인지 충분히 이해할만한 질문인데...
모델과 테이블에 관한 얘기는 쿼리문과 관련된 질문이 아니에요.

답변이 너무 성의가 없네요....
이런 답변 쓰시면 우월감 느끼세요?

이런분들때문에 QNA 답변하기가 껄끄러워 집니다.

어떻게 업데이트 되는지 프로그램에 대한 이야기가 하나도 없고

단지 안된다고 하시면 누가 해당 오류를 예측할수 있을까요?

 

누가보면 제가 돈을 받고 지원을 해주는 직원인줄 알겠어요 ㅎ

제가 차단은 가급적 안하는데 오늘 또 한명 추가되네요 ㅎㅎ

 

ps.

DB 에서 update 가 안된다는데 쿼리가 상관없다뇨 ㅎㅎ

오늘 우울했는데 크게 웃었습니다. 감사합니다.

네 차단해주시니 감사합니다.
그냥 모르면 답변을 안하시는게...
근데 전 차단은 안해요 ㅎㅎ

DB에서 update가 안된다는게 아니라 모델과 테이블 이야기 입니다.
쿼리와 상관이 없어요~
많이 웃으세요 ^^

  그누보드6 태그를 달고있고 글 제목만 봐도 어떤 상황인지 무엇을 해결하고 싶은건지 예측 가능하고 질문 내용도 이 예측을 충분히 뒷받침하는... 제목만 봐도 가늠할 수 있는 질문인데요.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 222
© SIRSOFT
현재 페이지 제일 처음으로