odoo-8
Odoo 모듈에 CSS 및 Javascript 파일 추가
수색…
통사론
- XML 구문에 대한 참고 사항 : XML 파일 내부에서 레코드가 작성되므로 일반적인 HTML처럼 다음과 같이 태그를 닫을 수 없습니다. <link rel = 'stylesheet'href = "..." > 대신 다음과 같이 link 태그를 사용하십시오.
- <link rel = 'stylesheet'href = "..." / >
매개 변수
inherit_id 매개 변수의 가능한 값 | 의미 |
---|---|
web.assets_backend | 내부 웹 페이지에만 사용되며 공개 웹 사이트에는 포함되지 않습니다. |
website.assets_frontend | 공개 웹 사이트에서만 사용됩니다 ( " 웹 사이트 "모듈을 통해). |
web.assets_common | 공개 웹 사이트 및 내부 페이지 모두에서 사용됩니다. |
비고
어떤 옵션이 적합한 지 잘 모르는 경우에는 대부분의 경우 및 "웹 사이트"모듈을 설치하지 않은 경우 거의 모든 경우에 사용되므로 첫 번째 옵션 (백엔드)을 시도하십시오. Odoo는 "웹 사이트"모듈에서 제공하는 공개 웹 사이트가 ERP 작업에 사용되는 내부 페이지와 다른 스타일 및 JS 코드를 사용하기 때문에 "백엔드"와 "프론트 엔드"자산을 구별합니다. 즉, "프론트 엔드"는 공개 웹 사이트와 연결되어 있으며 "백엔드"는 ERP의 내부 페이지와 관련됩니다 ( "프런트 엔드"와 "백엔드"의 의미는 여기의 Odoo이지만 둘 다 더 일반적인 의미에서 "프론트 엔드"입니다).
옵션 중 하나를 선택하여 사용할 수있을뿐 아니라 동일한 모듈에서 이들 중 두 가지 또는 모두를 조합하여 사용할 수도 있습니다. 백엔드, 프론트 엔드 및 공통 JS / CSS 코드를 DRY를보다 잘 준수하고 공개 웹 사이트 및 내부 페이지에 적합한 코드를 갖도록 분리 된 파일로 분해합니다.
__openerp__.py
매니페스트의 종속성 목록에 "웹"( 옵션 1 사용 ) 또는 "웹 사이트"( 옵션 2 사용시)를 추가하는 것을 잊지 마십시오.
Odoo 모듈에 CSS와 JS 파일을 올바르게 저장하십시오.
CSS 및 JS 파일은 모듈의 루트 디렉토리에있는 '정적'디렉토리에 있어야합니다 ( '정적'아래의 나머지 서브 디렉토리 트리는 선택적 규칙입니다).
- static / src / css / your_file.css
- static / src / js / your_file.js
그런 다음이 예제에 나열된 세 가지 방법 중 하나를 사용하지 않는 링크를이 파일에 추가하십시오.
옵션 1 : [BACKEND] 내부 페이지에 사용할 CSS 및 Javascript 파일 추가
Odoo v8.0 방식은 XML 파일에 해당 레코드를 추가하는 것입니다.
매니페스트에 XML 파일을 추가하십시오 (예 :
__openerp__.py
파일)....
'data': [ 'your_file.xml'],
...그런 다음
'your_file.xml'
에 다음 레코드를 추가하십시오.
<openerp> <data> <template id="assets_backend" name="your_module_name assets" inherit_id="web.assets_backend"> <xpath expr="." position="inside"> <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/> <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script> </xpath> </template> .... .... </data> </openerp>
옵션 2 : [FRONTEND] 공개 웹 사이트에서 사용할 CSS 및 Javascript 파일 추가
참고 : "웹 사이트"모듈을 설치했고 공개 웹 사이트를 사용할 수있는 경우이 방법을 사용해야합니다.
-
'your_file.xml'
에 다음 레코드를 추가하십시오 :
<openerp> <data> <template id="assets_frontend" name="your_module_name assets" inherit_id="website.assets_frontend"> <xpath expr="link[last()]" position="after"> <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/> </xpath> <xpath expr="script[last()]" position="after"> <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script> </xpath> </template> </data> </openerp>
옵션 3 : [공통] 모든 페이지 (백 엔드 및 프론트 엔드)에서 사용할 CSS 및 Javascript 파일 추가
-
'your_file.xml'
에 다음 레코드를 추가하십시오 :
<openerp> <data> <template id="assets_common" name="your_module_name assets" inherit_id="web.assets_common"> <xpath expr="." position="inside"> <link rel='stylesheet' href="/fr/your_module_name/static/src/css/your_file.css"/> <script type="text/javascript" src="/your_module_name/static/src/js/your_file.js"></script> </xpath> </template> </data> </openerp>