Skip to content
node.js mvc module for express
JavaScript
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
samples
Readme.md
controller.js
index.js
package.json
xml.js

Readme.md

This is light weight mvc wrapper for express on node.js inspired by Zend Framework on php.

installation

npm install mvc

samples of application structure:

without modules (https://github.com/morozovsk/mvc/tree/master/samples/sample-without-modules)

app/
-controllers/
--index.js
-models/
--message.js
-views/
--layout.ejs
--index/
---index.ejs

with modules (https://github.com/morozovsk/mvc/tree/master/samples/sample-with-modules)

app/
-controllers/
--index.js
-models/
--message.js
-views/
--layout.ejs
--index/
---index.ejs
-modules/
--admin/
---controllers/
----index.js
---models/
----message.js
---views/
----layout.ejs
----index/
-----index.ejs

You can use helpers in your controllers:

this._app - link to express.createServer()
this._request - link to express request
this._response - link to express response
this._params - link to request.params
this._param - link to request.param
this._query - link to request.query
this._cookies - link to request.cookies
this._partial - link to response.partial
this._redirect - link to response.redirect
this._local - link to response._local
this._locals - link to response._locals
this._queryParam(name, defaultValue) - method for request.query like request.param
this._url(params) - method for generate url from object (example: this._url({controller:"message", action:"edit", id: 5}) => '/message/edit?id=5')

routes:

/
/controller
/controller/action
/controller/action?param1=value1&param2=value2
/controller?param1=value1&param2=value2
/module/controller
/module/controller/action
/module/controller/action?param1=value1&param2=value2
/module/controller?param1=value1&param2=value2
/module?param1=value1&param2=value2
/?param1=value1&param2=value2
Something went wrong with that request. Please try again.