博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Node.js与Sails~项目结构与Mvc实现
阅读量:6869 次
发布时间:2019-06-26

本文共 1196 字,大约阅读时间需要 3 分钟。

Sails是一个Node.js的中间件架构,帮助我们很方便的构建WEB应用程序,网址:http://www.sailsjs.org/,它主要是在Express框架的基础上发展起来的,扩展了新的功能组件,下面我们来看一下安装方法

一 安装Sails

npm -g install sails

二 建立一个Sails的项目

sails new testProject

三 启动项目

cd testProjectsails lift

四 项目的结构,基于MVC理念

我们可以看到它与是由model,view,controller组成,它们之间的调用关系与.net mvc十分类似,只不过.net mvc里的model主要是指viewmodel,而在sails里model主要是数据模型,即.net里的Entity,它是数据表的一种抽象,对于数据的持久化,sails提供了很多种,如本地文件,mysql,mongodb,redis等,对于sqlserver我们也可以找到第三方的组件。

五 通过controller的action来渲染视图

我们在.net mvc里,大家都知道视图是通过action的render方法进行渲染的,其时sails也是这样的,可以使用原生的render,也可以使用封装好的view方法,而在视图上直接使用你的action返回的对象即可。

controller/action的内容

module.exports={    index: function (req, res){        return res.view("test/index",{title:"大叔",engTitle:"Lind"});        //return res.view("view_name",data)//view_name参数为空表示用当前的action    }};

view-ejs的内容

从action返回的对象-title:<%=title%>

从action返回的对象-engTitle:<%=engTitle%>

调用的结果如下

如果进入index页面可以直接写控制器名称

如果其它action希望走/test这样的路由,需要在config/route.js里进行配置,如为add这个action添加路由为/user,它的设置如

'get /user': {view: 'user/add',locals: {layout: null}},'get /test':{view:'test/index',locals:{layout:null}}

好了,到这样一个最简单的MVC的DEMO就做好了,下一节我们将引用Model,即数据持久化的机制,进行对数据表的curd操作,敬请期待...

本文转自博客园张占岭(仓储大叔)的博客,原文链接:,如需转载请自行联系原博主。

你可能感兴趣的文章
UWP 手绘视频创作工具技术分享系列 - 手绘视频导出
查看>>
Python import容易犯的一个错误
查看>>
Dubbo,Zookeeper入门
查看>>
SecureCRT自动断开连接的问题
查看>>
leetcode 101. Symmetric Tree
查看>>
Bash - 趣味Shell
查看>>
鹅厂优文|打通小程序音视频和webRTC
查看>>
『Github』本地项目更新到服务器
查看>>
黄聪:iOS $299刀企业证书申请的过程以及细节补充
查看>>
Java并发编程的艺术(一)——并发编程需要注意的问题
查看>>
H5下拉刷新和上拉加载实现原理浅析
查看>>
HBase实战(4):使用JAVA操作分布式集群HBASE
查看>>
An Introduction to OAuth 2
查看>>
Linux pwn入门教程(1)——栈溢出基础
查看>>
程序员、架构师、技术总监、CTO
查看>>
AnalyticDB - 分析型数据库
查看>>
【SVN】SVN的trunk、branches、tag的使用以及分支的概念
查看>>
SQL SERVER中关于OR会导致索引扫描或全表扫描的浅析 (转载)
查看>>
docker是PaaS,与openstack是IaaS的关系
查看>>
tensorflow 笔记8:RNN、Lstm源码,训练代码输入输出,维度分析
查看>>