Ricerca…


Osservazioni

I controller (la C in MVC ) sono gli oggetti principali dell'applicazione Sails che sono responsabili di rispondere alle richieste da un browser Web, un'applicazione mobile o qualsiasi altro sistema in grado di comunicare con un server. Spesso fungono da intermediari tra i tuoi modelli e le tue visualizzazioni. Per molte applicazioni, i controller contengono la maggior parte della logica di business del progetto.

Sintassi ES2015

'use strict';

// This is an example of a /api/controllers/HomeController.js
module.exports = {
  // This is the index action and the route is mapped via /config/routes.js
  index(req, res) {
    // Return a view without view model data
    // This typically will return the view defined at /views/home/index.<view engine extension>
    return res.view();
  },
  foo(req, res) {
    // Return the 'foo' view with a view model that has a `bar` variable set to the query string variable `foobar`
    return res.view({
      bar: req.param('foobar'),
    });
  },
};

Utilizzo dei generatori ES2015 con co.js

'use strict';

const co = require('co');

module.exports = {
  // This is the index action and the route is mapped via /config/routes.js
  index(req, res) {
    co(function* index() {
      // Return a view without view model data
      // This typically will return the view defined at /views/home/index.<view engine extension>
      return res.view();
    }).catch(res.negotiate); // Catch any thrown errors and pass the error to the `negotiate` policy.
  },
  foo(req, res) {
    co(function* foo() {
      // Get an array of `FooBar` items from the database
      const items = yield FooBar.find();

      // Return the 'foo' view with a view model containing the array of `FooBar` items
      return res.view({
        items,
      });
    }).catch(res.negotiate); // Catch any thrown errors and pass the error to the `negotiate` policy.
  },
};


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow