我正在研究Node REST API,其中我尝试在数据库的不同表中导入CSV文件。我想通过一个函数来实现它,为此,我创建了一个数组并在那里放了4个元素。这些元素也是数据库的模块和表格。
我正在逐个检查数组的元素,如果用户选择了一个元素,那么它将匹配条件并将文件导入数据库并以json格式返回数据。为此,我也在使用' sugarcrm-js-rest-consumer'浏览器和node.js的npm包。 " sugar.setEntries"是该休息使用者的预定义方法。
我还没有在代码中添加任何csv导入包,请在下面找到我的代码以便更好地理解。请帮我解决这个问题。
home.js
/**
* POST /importfile
*/
exports.importFile = (req, res) => {
//var selMod = req.body.selectedModule;
console.log("req.body---------", req.body);
var selMod = 'Accounts';
if(req.body.sessionId != "")
{
var modules = ['Contacts', 'Accounts', 'Leads', 'Opportunities'];
if (modules.indexOf('Contacts')!=-1 && selMod=='Contacts') {
console.log("Good day Contacts");
// setEntries
sugar.setEntries("Contacts", false, req.body.saveData).then(function(response)
{
res.send({status:'success',msg:'Contacts added successfully.',responseData:response['id']});
})
.catch(function(err)
{
console.error(err);
res.send({status:'error',msg:'Unable to created Contacts.'});
});
}
else if (modules.indexOf('Accounts')!=-1 && selMod=='Accounts') {
console.log("Good day Accounts");
sugar.setEntries("Accounts", false, req.body.saveData).then(function(response)
{
res.send({status:'success',msg:'Accounts added successfully.',responseData:response['id']});
})
.catch(function(err)
{
console.error(err);
res.send({status:'error',msg:'Unable to created Accounts.'});
});
}
else if (modules.indexOf('Leads')!=-1 && selMod=='Leads') {
console.log("Good day Leads");
sugar.setEntries("Leads", false, req.body.saveData).then(function(response)
{
res.send({status:'success',msg:'Leads added successfully.',responseData:response['id']});
})
.catch(function(err)
{
console.error(err);
res.send({status:'error',msg:'Unable to created Leads.'});
});
}
else if (modules.indexOf('Opportunities')!=-1 && selMod=='Opportunities') {
console.log("Good day Opportunities");
sugar.setEntries("Opportunities", false, req.body.saveData).then(function(response)
{
res.send({status:'success',msg:'Opportunities added successfully.',responseData:response['id']});
})
.catch(function(err)
{
console.error(err);
res.send({status:'error',msg:'Unable to created Opportunities.'});
});
}
}
else
{
res.send({status:'error',msg:Constants.COMN_SESSION_MESSAGE});
}
};
的index.php
case '26':
?>
<h3> Import data</h3>
<form action="http://localhost:5000/importfile" method="POST">
<table>
<tr>
<td>
Select Module in which you want to import file<select name="modules" id="modules" title="">
<option label="Contacts" value="Contacts" selected="selected">Contacts</option>
<option label="Accounts" value="Accounts">Accounts</option>
<option label="Leads" value="Leads">Leads</option>
<option label="Opportunities" value="Opportunities">Opportunities</option>
</select>
</td>
</tr>
<tr>
<td>
<input type="file" name="fileUpload" value="fileUpload">
</td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="submit">
</td>
</tr>
</table>
</form>
<?php
break;
index.js
app.post('/importfile', homeController.isAuthenticated, homeController.importFile);