要自定义应用程序,我已经使用ckan' csv + carte'定义了一种新格式。 实际上,它是一个带有视图和DataExplorer视图的CSV文件。所以,我想用视图DataExplorer打开这种格式,但是我遇到了dataproxy的问题:无法加载视图:DataProxy返回错误(数据转换失败。例外:不支持资源类型' csv + carte') 所以我不确切地知道如何告诉dataproxy将其视为csv格式,因此可以使用DataExplorer打开它。 我所做的是修改ckan-docker_src \ ckan \ ckan \ public \ scripts \ application.js下的代码;特别是这部分:
else if (resourceData.formatNormalized in {'csv': '', 'xls': '', 'tsv':'', 'csv + carte':''}) {
// set format as this is used by Recline in setting format for DataProxy
console.log("CSV");
**// Treat 'csv + carte' format like csv
if(resourceData.formatNormalized === 'csv + carte')
resourceData.format='csv'
else
resourceData.format = resourceData.formatNormalized;**
resourceData.backend = 'dataproxy';
var dataset = new recline.Model.Dataset(resourceData);
var errorMsg = CKAN.Strings.errorLoadingPreview + ': ' +CKAN.Strings.errorDataProxy;
dataset.fetch()
.done(function(dataset){
dataset.bind('query:fail', function(error) {
$('#ckanext-datapreview .data-view-container').hide();
$('#ckanext-datapreview .header').hide();
$('.preview-header .btn').hide();
});
initializeDataExplorer(dataset);
$('.recline-query-editor .text-query').hide();
})
.fail(function(error){
if (error.message) errorMsg += ' (' + error.message + ')';
showError(errorMsg);
});
}
但是,它不起作用。我必须在哪里修改以考虑这种新格式?谢谢你的帮助