比方说,我有3个分类单元(构建者,州,服务)。有没有一种方法可以过滤“编辑产品分类”以在单击时仅列出下拉菜单中的“服务”分类?狂欢视图是edit_product.html.erb
谢谢
taxons.js
//= require solidus_admin/Sortable
Spree.ready(function() {
var productTemplate = HandlebarsTemplates['products/sortable'];
var productListTemplate = function(products) {
return _.map(products, productTemplate).join('') || "<h4>" + Spree.translations.no_results + "</h4>";
};
var saveSort = function(e) {
var item = e.item;
Spree.ajax({
url: Spree.routes.classifications_api,
method: 'PUT',
data: {
product_id: item.getAttribute('data-product-id'),
taxon_id: $('#taxon_id').val(),
position: e.newIndex
}
});
};
var formatTaxon = function(taxon) {
return Select2.util.escapeMarkup(taxon.pretty_name);
};
$('#taxon_id').select2({
dropdownCssClass: "taxon_select_box",
placeholder: Spree.translations.find_a_taxon,
ajax: {
url: Spree.routes.taxons_search,
params: {
"headers": {
"X-Spree-Token": Spree.api_key
}
},
data: function(term, page) {
return {
per_page: 50,
page: page,
q: {
name_cont: term
}
};
},
results: function(data) {
return {
results: data['taxons'],
more: data.current_page < data.pages
};
}
},
formatResult: formatTaxon,
formatSelection: formatTaxon
});
$('#taxon_id').on("change", function(e) {
Spree.ajax({
url: Spree.routes.taxon_products_api,
data: {
id: e.val,
simple: 1
},
success: function(data) {
$('#taxon_products').html(productListTemplate(data.products));
var el = document.querySelector('#taxon_products')
new Sortable(el, {
draggable: ".sort_item",
onEnd: saveSort
});
}
});
});
});
以上JS适用于Spree或Solidus电子商务平台。
希望能够过滤分类单元以包含名称“服务”。
要澄清: 假设我有“构建者,州和服务”分类法。在“管理编辑产品”中,用于构建器,州和服务的所有分类单元都在下拉列表中列出。
我希望能够过滤列出哪些分类法。在这种情况下,我希望下拉列表框仅列出“ 服务”分类单元。
**Would like to see this:**
Services -> Senior Care
Services -> Nurse
**Do not want this:**
Builders -> Wall
Builders-> Mason
Services -> Senior Care
Services -> Nurse
States -> Utah
States -> Texas
答案 0 :(得分:0)
设法通过修改taxon_autocomplete.js来完成这项工作