문제 상황
커스텀 모듈을 생성해 해당 모듈의 번역 파일에서 새로운 번역을 추가
하고, 기존 번역을 수정
했다.
커스텀 모듈(stock_ssk)의 새로운 번역 추가 : 매출 문서
1
2
3
4
#. module: stock_ssk
#: model_terms:ir.ui.view,arch_db:stock_ssk.view_picking_form
msgid "Sale Source Document"
msgstr "매출 문서"
기존 모듈(stock)의 번역 수정 : 유효성 검사 → 입고/출고 처리
1
2
3
4
#. module: stock
#: model_terms:ir.ui.view,arch_db:stock.view_picking_form
msgid "Validate"
msgstr "입고/출고 처리"
문제는 커스텀 모듈 설치 시, 새롭게 추가된 번역인 매출 문서
는 정상적으로 적용되었지만, 기존 번역인 유효성 검사
를 입고/출고 처리
로 수정한 건 적용되지 않았다.
기존 번역을 수정한 사항을 적용하기 위해서는 설정 → 번역하기 → 번역 가져오기 에서 번역 파일을 Import 해주는 방법이 있지만, 새롭게 데이터베이스를 생성할 때마다 기존 번역 파일을 Import 해주는 방법은 번거로워 커스텀 모듈 설치 시에 기존 번역 수정 사항을 적용하는 방법을 알고싶었다.
해결 방안
생각보다 아주 간단하지만, 왠지 바로 적용이 안되서 헤매었다. Odoo 실행 시, parameter에 --i18n-overwrite
옵션을 사용하면 된다.
⚠️ 반드시 -u module_name
으로 업데이트할 모듈 옵션과 함께 사용해야 한다.
1
$ python odoo-bin --config=./config/.odoorc --i18n-overwrite -u module_name
여러 모듈일 경우, 아래와 같이 사용한다.
1
$ python odoo-bin --config=./config/.odoorc --i18n-overwrite -u module_name1,module_name2,module_name3