Я только начал изучать стек MEAN и должен генерировать динамические формы "на лету".
Требование состоит в том, чтобы импортировать документ (excel/csv/xml/xls и т.д.) и генерировать динамические формы, используя его, чтобы пользователь мог обновлять свои данные и снова экспортировать его в соответствующий файл.
Для этого я конвертирую документы в формат JSON и сохраняю данные JSON в базе данных MongoDB.
Пример: рассмотрим данные xlsx
:
ID Name dob Gender
1 user1 7-Dec-87 m
2 user2 8-Dec-87 f
3 user3 9-Dec-87 f
3 user4 4-Dec-87 m
И я преобразовываю это с помощью модуля xlsx-to-json
в формат JSON и сохраняю его в Mongodb.
app.post('/myapp', function (req, res) {
//console.log("===========" + req.file.path);
converter({
input: req.file.path,
output: "output.json"
}, function (err, result) {
if (err) {
console.error(err);
} else {
console.log(result);
db.collection('test').insert(result, function (err, doc) {
console.log(err);
res.json(doc);
});
}
});
});
Здесь я извлекаю данные из Mongodb & express.js
app.get('/myapp', function (req, res) {
db.collection('test').find(function (err, docs) {
console.log(docs);
res.json(docs);
});
});
app.get('/birthdaylist/:id', function (req, res) {
var id = req.params.id;
console.log(id);
db.collection('test').findOne({_id: mongojs.ObjectId(id)}, function (err, doc) {
console.log(JSON.stringify(doc));
res.json(doc);
});
});
и здесь вывод JSON
:
[
{ dob: '7-Dec-87', ID: '1', Name: 'user1' },
{ dob: '8-Dec-87', ID: '2', Name: 'user2' },
{ dob: '9-Dec-87', ID: '3', Name: 'user3' },
{ dob: '4-Dec-87', ID: '4', Name: 'user4' }
]
Итак, у меня мало запросов:
-
Это правильный подход, который я делаю для создания динамической формы из xlsx/csv..etc? Если да, то как я могу генерировать динамическую форму сверху JSON.
-
При поиске в google я обнаружил, что mongodb автоматически генерирует форму (https://github.com/GothAck/forms-mongoose) Это поможет, потому что могут быть огромные данные о файлах excel.
Любая помощь будет действительно оценена.