我已按照此帖中的说明进行操作
将javascript文件添加到前端(从website.assets_frontend继承模板)
当我使用有权更改qweb的用户登录时,会下载js,但是当我没有该权限的用户或匿名用户登录时,不会下载该脚本。
我需要匿名用户的这个js脚本。怎么了?我该怎么办?
<template id="assets_frontend" inherit_id="website.assets_frontend" name="menora_website assets">
<xpath expr="/t" position="inside">
<script type="text/javascript" src="/website_my_module/static/src/js/my_assets.js"></script>
</xpath>
</template>
此代码适用于管理员用户,但不适用于匿名用户
//my_assets.js
$(document).ready(function () {
"use strict";
var website = openerp.website; var _t = openerp._t;
$('#birdthdate').datepicker();
});
答案 0 :(得分:0)
我的猜测就是这一行
<xpath expr="/t" position="inside">
将expr="/t"
更改为expr="."
,如参考文献
答案 1 :(得分:0)
查看我的代码和结果,我发现模板片段工作正常。 JS文件已下载或插入minized assets_frontend ok。
我的js代码无效,因为它是在JQuery定义之前插入的。这就是Global $变量尚未定义的原因。该位置应该是&#34;&#34;&#34;继承模板时的最后一个<script>
标记。
我没有尝试我的上一个建议,我所做的是在我为自定义网站用户界面创建的模板末尾插入<script>
标记。此时,所有js文件都以全局$变量的定义方式加载。