私は最近、急行を学び、エクスプレス+ MongoDBの+僧侶+ EJSと小さなブログを作りたい、下記の私はwritedコードです:修道士は約束の代わりに直接データを返すことができますか?
モデルでは、輸出が扱えるように機能するいくつかのjsされているデータ:
var db = require('../model/public').db;
var contentCollection = db.get('contentcollection');
exports.getContent = function (fn) {
contentCollection.find({},{},function(err,data){
fn(data);
});
};
コントローラは、ルートとの契約である:
var express = require('express');
var router = express.Router();
var $data = require('../model/core').$content;
var $ = require('../controller/util');
router.get('/', function(req, res, next){
$data.getContent(function(data){
res.render('content', $.extend(req.staticRes, {
article: data
}));
});
});
module.exports = router;
(このコードでは、「$」はutilの機能で行うだけでjQuery.extendのような二重のオブジェクトを拡張する方法を含む。)
コントローラは、レンダリング可能ページですビュー:
<% include ./public/head %>
<%include ./public/header%>
<%for(var i = 0;i<article.length;i++){%>
<div class="article">
<div class="title">
<%= article[i]["title"]%>
</div>
<div class="content">
<%= article[i]["content"]%>
</div>
</div>
<%}%>
<script src="/js/content.js"></script>
<% include ./public/footer %>
私を混同して何がモデルの一部では、私は私だけを使用することになり
という名前のメソッド内のデータにアクセスすることができますそのようなgetContnet機能:
router.get('/', function(req, res, next){
$data.getContent(function(data){
res.render('content', $.extend(req.staticRes, {
article: data
}));
});
});
しかし、私は唯一の以下のフォームなどのデータベースからのデータのクエリを処理したいので、私はデータを照会いくつかの機能を使用することができますが、別のコレクションを形成:
router.get('/', function(req, res, next){
res.render('content', {
article: $data.getContent('some arguments here to query from content collection'),
user: $data.getUser('some arguments here to query from user collection')
});
});
私の語彙は、グーグルのおかげで;-)
誰が助けて翻訳し、悪いですか?
追加:
var s = contentCollection.find({},{},function(err,data){
fn(data);
});
console.log(s);
は、私はそれを慰める約束です。