我在soap服务工件中添加了一个新属性,用于存储服务的无限制操作(类似于联系人或端点表)
我的问题是如何在商店中显示该属性表?
我尝试使用像资产这样的新属性
来编辑asset-attributes.hbs<div class="es-col-lg-12 col-lg-12">
<h4>{{t "Operaciones del Servicio Web"}}</h4><hr>
{{#each this.attributes.operaciones_nombre }}
<div class="es-col-lg-12 col-lg-12 divrow">
<div class="col-lg-2"><b>{{t "Nombre"}} :</b></div>
<div class="col-lg-10">{{ this.attributes.operaciones_nombre}}</div>
</div>
{{/each}}
但问题是,当它在 #each 内部时,它不显示 this.attributes.operaciones_nombre ,即使我使用 this.attributes。 operaciones_nombre。[0] 仅显示第一个元素
为什么循环只适用于 {{#each this.attributes.operaciones_nombre}} 而不是 {{#each this.attributes.operaciones}} ?我是否需要在asset.js中定义它以及我是如何做到的?
答案 0 :(得分:1)
联系人使用此功能。我在下面的代码中测试了restservice,它的工作正常。对于端点和您的情况,您可以使用相同的。
在相关的 asset.js 中添加 asset.renderer ,
asset.renderer = function (ctx) {
return {
pageDecorators: {
jsonFormatter: function (page) {
if (page.meta.pageName === 'details') {
var contacts = page.assets.attributes.contacts_entry;
if (contacts) {
var contacts_entry = [];
if (contacts.constructor === Array) {
for (var index in contacts) {
var contact = contacts[index].split(':');
var contact_entry = {};
contact_entry.name = contact[0];
contact_entry.value = contact[1];
contacts_entry.push(contact_entry);
}
} else {
var contact = contacts.split(':');
var contact_entry = {};
contact_entry.name = contact[0];
contact_entry.value = contact[1];
contacts_entry.push(contact_entry);
}
page.assets.attributes.contacts_entry = contacts_entry;
}
}
}
}
};
};
注意:如果此处已经定义了pageDecorators,请使用逗号分隔这些方法并添加上述方法。
在 asset-attributes.hbs 中添加以下行
<div class="col-lg-12">
<h4>Contacts</h4><hr>
<div class="col-lg-12 table table-striped table-hover divrow">
{{#each attributes.contacts_entry}}
<div class="col-lg-2">{{name}}</div>
<div class="col-lg-10">{{value}}</div>
{{/each}}
</div>
</div>
注意:在资产扩展中,您需要 asset-attributes.hbs (/ {GREG_HOME} / repository / deployment / server / jaggeryapps / store / extensions / assets / {SHORTNAME} / themes /store/partials/asset-attributes.hbs)文件覆盖位于 greg-store-defaults 中的默认文件。
请查看发布商和商店的示例屏幕截图
<强>发布商强>
商品强>
注意:存在一些对齐问题。 CSS /引导! ;)
请参阅this blog post。
注意:下次请为相关属性添加rxt定义。