我试图继承
slide.slide.quiz.validation
中的website_slides
来更改电子学习中测验页面按钮的标签。升级我的自定义模块和 website_slides
时没有显示任何错误,但仍然没有任何更改。我已经放了 ff:
自定义_模块>静态> src> js>自定义_js.js
odoo.define('custom_module.quiz', function (require) {
"use strict";
var Quiz = require('website_slides.quiz').Quiz;
Quiz.include({
xmlDependencies: (Quiz.prototype.xmlDependencies || []).concat(
["/custom_module/static/src/xml/slide_quiz.xml"]
)
});
});
自定义_模块>静态> src> xml>自定义_模板.xml
<?xml version="1.0" encoding="utf-8" ?>
<templates xml:space="preserve">
<t t-extend="slide.slide.quiz.validation">
<t t-jquery=".o_wslides_js_lesson_quiz_reset" t-operation="replace">
<button class="btn btn-light border o_wslides_js_lesson_quiz_reset">
Retake
</button>
</t>
</t>
</templates>
自定义模块>视图>assets.xml
<?xml version="1.0" ?>
<odoo>
<template id="elearning_assets" name="eLearning Assets" inherit_id="website.assets_frontend">
<xpath expr="//link[last()]" position="after">
<link rel="stylesheet" type="text/scss" href="/custom_module/static/src/scss/course.scss" />
</xpath>
<xpath expr="//script[last()]" position="after">
<script type="text/javascript" src="/custom_module/static/src/js/slides_course_quiz.js"/>
</xpath>
</template>
</odoo>
assets.xml
已包含在清单文件中。我也继承了slide.channel
模型。
这是来自 website_slides > static > src > xml > slip_quiz.xml 的原始 odoo 模板
<t t-name="slide.slide.quiz.validation">
<div id="validation">
# existing code
<div t-else="" class="d-md-flex align-items-center justify-content-between">
# existing code
<div class="ml-auto mt-3 mt-md-0">
<button t-if="widget.quiz.quizAttemptsCount > 0 && widget.slide.channelCanUpload" class="btn btn-light border o_wslides_js_lesson_quiz_reset">
Reset
</button>
<button t-if="widget.slide.completed && widget.slide.hasNext" class="btn btn-primary o_wslides_quiz_continue">
Continue <i class="fa fa-chevron-right ml-1"/>
</button>
</div>
</div>
</div>
</t>
我仍在努力解决代码中的问题,但我已经陷入了困境。如果您能提供任何意见或帮助,我将不胜感激。预先感谢。
出现此问题可能是因为您缺少属性
id="template"
。
<templates id="template" xml:space="preserve">
<t t-extend="slide.slide.quiz.validation">
<t t-jquery=".o_wslides_js_lesson_quiz_reset" t-operation="replace">
<button class="btn btn-light border o_wslides_js_lesson_quiz_reset">
Retake
</button>
</t>
</t>
</templates>