Odoo 개발 기초: 뷰, 메뉴, 액션, 위젯 이해 및 상속
🤖 AI 추천
Odoo 프레임워크를 처음 접하거나 관련 모듈 개발 경험이 적은 백엔드 개발자 및 풀스택 개발자에게 이 콘텐츠는 Odoo의 핵심 UI 구성 요소와 이를 효과적으로 다루는 방법을 이해하는 데 큰 도움이 될 것입니다. 특히, Odoo 애플리케이션의 사용자 인터페이스를 설계하고 커스터마이징하는 데 필요한 필수적인 지식을 제공합니다.
🔖 주요 키워드

Odoo 개발 기초: 뷰, 메뉴, 액션, 위젯 이해 및 상속
이 콘텐츠는 Odoo 개발 입문자를 대상으로 Odoo의 사용자 인터페이스(UI) 구축에 필수적인 요소인 뷰(Views), 메뉴(Menus), 액션(Actions), 위젯(Widgets)의 기본 개념과 상호 연관성을 명확하게 설명합니다. Odoo 모듈 개발 시 UI 로직을 이해하고 효과적으로 구현하기 위한 실질적인 가이드를 제공합니다.
핵심 기술
Odoo 프레임워크 내에서 XML을 사용하여 UI 구성 요소를 정의하고, Python과의 연동을 통해 동적인 사용자 경험을 구현하는 방법을 다룹니다.
기술적 세부사항
- 모듈 구조 및 데이터 파일 관리:
- 커스텀 모듈 내
views/
디렉토리에.xml
파일 구성. __manifest__.py
의data
섹션에 뷰, 메뉴, 액션 관련 XML 파일 포함.- 중요: XML 파일의 선언 순서: 참조되는 ID(메뉴, 뷰, 액션 등)를 정의하는 파일이 참조하는 파일보다 먼저 리스트에 포함되어야 함 (예:
menu.xml
이library_book_views.xml
보다 선행).
- 커스텀 모듈 내
- 메뉴(Menus):
- 계층 구조 및 순서(sequence)를 통한 메뉴 구성.
<menuitem>
태그 사용 (id
,name
,parent
,sequence
속성).parent
속성을 이용한 서브메뉴 정의.- 특정 모델/뷰를 열도록 메뉴를 액션과 연결 (
action
속성).
- 뷰(Views):
- Tree View (List View): 레코드 목록 표시.
Many2many
,One2many
필드도 트리 형태로 표시 가능. - Form View: 레코드 생성 및 편집 화면.
- Kanban View: 스테이지 기반 워크플로우(예: CRM 파이프라인) 시각화.
- Search View: 필터 및 그룹화 옵션 제공.
- Tree View (List View): 레코드 목록 표시.
- 위젯(Widgets):
- 필드의 UI 표시 방식을 제어하는 컴포넌트.
- 다양한 위젯 활용 가능 (예: 날짜, 숫자, 텍스트 등).
- 뷰 상속 및 수정 (View Inheritance):
inherit_id
및xpath
를 사용한 기존 뷰 수정 및 확장.- 컴포넌트 속성 수정 또는 대체 시
inherit component
사용.
- QWeb (Templating Engine):
- PDF 리포트, Kanban 커스터마이징, 클라이언트 사이드 렌더링에 사용.
개발 임팩트
이 콘텐츠를 통해 Odoo 개발자는 사용자 친화적인 인터페이스를 설계하고, 기존 Odoo 기능을 효율적으로 확장하며, 복잡한 데이터 시각화를 구현할 수 있는 기반을 다질 수 있습니다. 모듈 개발의 생산성을 높이고 사용자 경험을 개선하는 데 직접적인 영향을 줍니다.
커뮤니티 반응 및 추가 팁
- 개발자 모드 활성화: 뷰 ID 및 구조를 검사하는 데 필수적입니다.
- 실제 데이터로 테스트: 사용성 확보를 위해 실제 데이터로 뷰를 테스트하는 것이 중요합니다.
📚 관련 자료
odoo
Odoo의 공식 저장소로, 모든 Odoo의 핵심 기능, 뷰, 메뉴, 액션, 위젯 구현의 원형을 파악할 수 있습니다. 이 콘텐츠에서 설명하는 모든 개념은 이 저장소의 코드를 기반으로 합니다.
관련도: 95%
odoo-addons
Odoo의 공식 애드온 저장소로, 다양한 모듈에서 뷰, 메뉴, 액션, 위젯이 어떻게 사용되고 상속되는지에 대한 실제적인 예시를 풍부하게 제공합니다. 커스터마이징 및 확장 방법을 배우는 데 유용합니다.
관련도: 85%
OCA (Odoo Community Association) repositories
Odoo 커뮤니티에서 개발된 다양한 모듈들을 모아놓은 곳입니다. 이 저장소들에서 실제 Odoo 커스터마이징 사례와 함께 뷰, 메뉴, 액션, 위젯 활용 및 상속 패턴을 학습할 수 있습니다.
관련도: 80%