Есть ли способ отключить ватерлинию и использовать другой ORM в парусах.Яш?

Я хотел бы заменить ватерлинию мангустом в моем паруса.js приложение. Я ищу правильный способ сделать это, но я не вижу, как в документации. Кто-нибудь может объяснить, как это сделать?

1 ответов


определение переопределяет via .sailsrc

вы можете сделать это через переопределения конфигурации, которые будут определены через .sailsrc в корне проекта. В основном вы должны предотвратить всю инициализацию ватерлинии, в настоящее время помеченную как orm крюк. В.sailsrc:

{
  "hooks": {
    "orm": false,
    "pubsub": false
  }
}

вам придется отключить pubsub крюк, а также-это зависит от orm крюк. Соответствующие строки в источнике:версия v0.10, версия v0.9.8.

это отключит the orm hook для следующих команд запуска:

  • поднять паруса
  • консоль паруса
  • узел app.js (так как совершить 862c053a66), см. "Приложение.использование js .sailsrc " для более старых версий

Что касается стабильности этого в будущих версиях парусов, вы должны знать о том, что система крючков в настоящее время помечена как нестабильная, а отключение крючков -посоветовал в отношении:

// Allow disabling of hooks by setting them to "false"
// Mostly useful for testing, and may cause instability in production!

дополнительную информацию можно найти здесь:

приложение.использование js .sailsrc

Примечание: это запечено в паруса по умолчанию, так как обсуждаемый PR был объединен для проверки git кровоточащего края.

Для Паруса 0.10.x

сделать .sailsrc применить к приложению.js вы можете заменить строку 37 в приложении.js с этим:

// app.js, following line 36
var fs = require('fs');
var sailsRc = __dirname + '/.sailsrc';
var config = {};

fs.exists(sailsRc, function(exists){
   if (!exists) return sails.lift();

   fs.readFile(sailsRc, 'utf8', function(err, data){
     if (err) {
       console.warn('Error while reading .sailsrc:' + err);
     }

     try {
       config = JSON.parse(data);
     } catch(e) {
       console.warn('Error while parsing .sailsrc:' + err);
     }

     sails.lift(config);
   });
});

Для Парусов 0.9.x

заменить приложение.js с этим:

// Start sails and pass it command line arguments
var fs = require('fs'),
    optimist = require('optimist'),
    sails = require('sails');

var sailsRc = __dirname + '/.sailsrc';
var config = optimist.argv;

fs.exists(sailsRc, function(exists){
  if (!exists) return sails.lift(config);

  fs.readFile(sailsRc, 'utf8', function(err, data){
    if (err) {
      console.warn('Error while reading .sailsrc:' + err);
    }

    try {
      config = sails.util.merge(config, JSON.parse(data));
    } catch(e) {
      console.warn('Error while parsing .sailsrc:' + err);
    }

    sails.lift(config);
 });
});