簡體   English   中英

MEAN堆棧中的動態html表單生成

[英]Dynamic html form generation in MEAN stack

我剛開始學習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文件可能存在大量數據。

任何幫助將非常感激。

您是否真的需要分析任意電子表格並動態提取架構,或者您是否提前知道架構? 如果你知道模式,那么Mongoose表單生成示例很簡單。 但要確保這實際上是一項要求,因為它很難。

你永遠不會100%,因為電子表格是由用戶和用戶創建的奇怪的東西。 但是你可以做出大部分時間都有效的東西。

您需要一些接受JSON對象的東西並提取模式並將其置於Mongoose模式格式中。

所以你想為Mongoose模式添加一個有趣的模塊。 我搜索了node-modules.com ,結果出現了: https//github.com/Nijikokun/generate-schema

表單生成不是一項微不足道的任務。 您可能需要考慮使用庫。 以下是一些可能對您有用的內容:

http://schemaform.io/

https://github.com/jdorn/json-editor/

另外,如果您需要幫助從JSON生成JSON模式:

http://jsonschema.net/#/

當然還有: http//json-schema.org/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM