Javascript MVC希望Node.js中的代码如何工作?
我开始关注node.js,我想知道如何做普通的MVC。例如,这里有一个Django视图,它从数据库中提取两组记录,并将它们发送到模板中进行呈现Javascript MVC希望Node.js中的代码如何工作?,javascript,model-view-controller,server-side,node.js,serverside-javascript,Javascript,Model View Controller,Server Side,Node.js,Serverside Javascript,我开始关注node.js,我想知道如何做普通的MVC。例如,这里有一个Django视图,它从数据库中提取两组记录,并将它们发送到模板中进行呈现 def view(request): things1 = ThingsOne.objects.all() things2 = ThingsTwo.objects.all() render_to_response('template.html, {'things1': things1, 'things2': things2}) 类
def view(request):
things1 = ThingsOne.objects.all()
things2 = ThingsTwo.objects.all()
render_to_response('template.html, {'things1': things1, 'things2': things2})
类似的node.js函数可能是什么样的?是一篇很棒的小文章,其中有一个完整的github示例,介绍了使用不同节点模块的MVC模式。它还列出了当前可用的备用模块。对我来说,它回答了这个问题,比有一些好的tut更好,但我在MVC上找不到任何东西。最简单的方法是使用expressjs,这是一个针对Node的MVC框架。节点就是它所说的web事件I/O 上的示例应该对基础有所帮助,但可以直接回答您的问题
var express = require('express');
var app = express.createServer();
app.get('/whatever', function(req, res) {
Things1.objects.getAll(function(things1) {
Things2.objects.getAll(function(things2) {
var options = { locals: { things1: things1, things2: things2 }};
res.render('thingstemplate.ejs', options); // or thingstemplate.jade or whatever
});
});
});
app.listen('80', ''); // port and optional hostname to bind
TowerJS是一个流行的基于
- MongoDB(数据库)
- Redis(后台工作)
- 咖啡脚本
- 触笔
- 茉莉花(测试)
- jQuery
SourceRailwayJS是一个MVC框架,使用基于ExpressJS的JavaScript编写,并在nodeJS平台上运行。它的灵感来自RubyonRails框架。您可以在此处阅读RailwayJS的MVC架构:可以将Express与其他工具结合使用来创建MVC框架,但Express不是“节点的MVC框架”。博客(我的意思是boldr.net)上提供的Github存储库已经死了。如果你对这个问题有一个更新的答案,你能与我们分享吗?我发现这对提高我的速度有很大的帮助。我在这里发布了一篇博客文章,介绍了我用来获得可靠MVC模式的工具: