을 정의되지 않은 내가 ODOO V8의 웹 사이트 템플릿 만들었습니다catch되지 않은 오류 ReferenceError가 : openerp이
<template id="assets_frontend" inherit_id="website.assets_frontend" name="MyTemplate">
<xpath expr="." position="inside">
<script type="text/javascript" src="/my_module/static/src/js/main.js"></script>
</xpath>
</template>
<template id="my_template">
<script type="text/javascript" src="/my_module/static/src/js/main.js"/>
<div>
<table>
<tr>
<td>Email: <input type="text" id="email"/></td>
</tr>
<tr>
<td colspan="3">
<input type="button" value="Submit" onclick="submitEmail();"/>
</td>
</tr>
</table>
</div>
</template>
그리고 main.js 파일의 내용은 다음과 같습니다
$(document).ready(function() {
"use strict";
function submitEmail() {
var self = this;
var website = openerp.website;
var Users = new openerp.website.Model('res.users');
// ...
}
})();
그러나에
는 제출 '버튼을 클릭 템플릿에서 브라우저 콘솔에 다음 오류를 표시합니다.Uncaught ReferenceError: openerp is not defined
main.js
파일에서 ODOO 모델 및 방법에 액세스해야합니다. 어떻게하면 위의 오류를 해결할 수 있습니까? 또는 모델과 메소드에 액세스 할 수있는 방법이 ODOO 클래스에서 javascript 파일로 정의되어 있습니까?
이 오류는 ODOO의 기본 모듈 (예 : website_sale)에 없으며 내가 만든 새 모듈에만 오류가 있습니다.
어떻게 이것을 사용하여 맞춤 모델에 액세스 할 수 있습니까? –
인스턴스는 openerp (instance/openerp의 객체)와 동일하므로 new instance.web.Model ('res.users')를 호출 할 수 있습니다. – prakash