2017-03-23 3 views
0

私はjavascriptで新しいです、そして、私はwebixを使いたいです。 私が始めたのを見て、それはOKです...mongodbからwebixでデータを表示

私の問題は、mongodbからのデータを表示できないことです。

これは私のserver.js

var express = require('express'); 
var path = require('path'); 
var bodyParser = require('body-parser'); 

//connect to the mongo 
var db = require('mongoskin').db("mongodb://localhost:27017/test", { w: 0}); 
db.bind('sites'); 

//create the app instance 
var app = express(); 
//serve static files 
app.use(express.static(path.join(__dirname, 'public'))); 
//parse POST data 
app.use(bodyParser.urlencoded({ extended: false })); 
// // parse application/json 
app.use(bodyParser.json()); 

function after_update(err, res, record){ 
    if (err){ 
    res.status(500); 
    res.send({ error:err.toString() }); 
    } else { 
    res.send(record || {}); 
    } 
} 

//data loading 
app.get('/data', function(req, res){ 
    db.record.find().toArray(function(err, data){ 
    for (var i = 0; i < data.length; i++){ 
     data[i].id = data[i]._id; 
     delete data[i]._id; 
    } 

    res.send(data); 
    }); 
}); 

app.post('/data', function(req, res){ 
    db.record.insert(req.body, function(err, record){ 
    if (err) return res.send({ status:"error" }); 
    res.send({ newid:req.body._id }); 
    }); 
}); 
app.put('/data/:id', function(req, res){ 
    db.record.updateById(req.param("id"), req.body, function(err){ 
    if (err) return res.send({ status:"error" }); 
    res.send({}); 
    }); 
}); 
app.delete('/data/:id', function(req, res){ 
    db.record.removeById(req.param("id"), req.body, function(err){ 
    if (err) return res.send({ status:"error" }); 
    res.send({}); 
    }); 
}); 

app.listen(3000); 

であり、私は、データを表示するためのindex.htmlを使用しています。ここでそれは吸う。 私の問題は、mongodbのテーブルからデータを取得する正しい方法が見つからないということです。 DBに車を表示したい。

誰かが助けてくれる例がありますか?

誰でもお気軽にお問い合わせください。 ありがとうございます

+0

車が表示されないサイト –

答えて

0

ブラウザに「/ data」を読み込みます。それは有効なJSONを示した場合は、データテーブルのクライアント側のコードをチェックし、それは私はあなたのコード内の2つの問題を参照してください

{ view:"datatable", autoConfig:true, url:"/data" } 
0

を、次のようなものでなければなりません(私はあなたのコレクションは、「車」 becouseであることを推測しますあなたのテキスト):

  1. あなたがラインで、 "車" よりdiferentコレクションを結合している "db.bind( 'サイト');""db.bind( 'cars');を変更する必要があります。

  2. あなたは「db.record.find」、「db.record.insert」の文章では、取得したデータを書き込むためにコレクション「記録」を使用している、「db.record.updateById」"db.record.removeById""db.cars.find"、 "db.cars.insert"、 "db.cars.updateById"および"db.cars.removeById"を変更する必要があります。

乾杯。

関連する問題