Вы на правильном пути с npm install -g sails
и sails new myproj
. Поскольку вы хотите использовать монго, вам нужно будет установить адаптер ватерлинии для монго (в каталоге проекта) npm install sails-mongo --save
и настроить паруса использовать монго.
Добавьте конфигурацию mongo в файл config/adapters.js:
module.exports.adapters = {
'default': 'mongo',
mongo: {
module : 'sails-mongo',
host : 'localhost',
port : 27017,
user : 'username',
password : 'password',
database : 'your mongo db name here',
// OR
module : 'sails-mongo',
url : 'mongodb://USER:PASSWORD@HOST:PORT/DB',
// Replica Set (optional)
replSet: {
servers: [
{
host: 'secondary1.localhost',
port: 27017 // Will override port from default config (optional)
},
{
host: 'secondary2.localhost',
port: 27017
}
],
options: {} // See http://mongodb.github.io/node-mongodb-native/api-generated/replset.html (optional)
}
}
};
Кроме того, для создания API (в каталоге проекта) используйте sails generate NAME
, где NAME
— имя модели. По умолчанию в базу данных можно добавить что угодно, поэтому вы можете ограничить свойства/поля и, возможно, даже проверить их. Это просто. Команда generate создала для вас несколько файлов, один из которых models/NAME.js
. В этом файле вы можете просто экспортировать объект с атрибутами, соответствующими нужному полю, и любым ограничениям/проверкам, которые вы хотите выполнить перед его сохранением.
// Person.js
var Person = {
attributes: {
firstName: 'STRING',
lastName: 'STRING',
age: {
type: 'INTEGER',
max: 150,
required: true
}
birthDate: 'DATE',
phoneNumber: {
type: 'STRING',
defaultsTo: '111-222-3333'
}
emailAddress: {
type: 'email', // Email type will get validated by the ORM
required: true
}
}
};
module.exports = Person;
На этой странице перечислены все типы и проверки, которые вы можете использовать.
Когда вы все настроите, запустите sails lift
, чтобы запустить сервер. Порт по умолчанию — 1337, но вы можете изменить его с помощью переменной окружения PORT или в своих локальных конфигурациях.
module.exports = {
port: 80
// ... more config things
}
Кроме того, что касается «A» в MEAN, проверьте Angular Sails. Это небольшой угловой сервис, который позволит вам легко воспользоваться преимуществами socket.io, которые паруса делают для вас. Вы можете вызывать все свои API через сокетное соединение, чтобы сделать их еще легче и быстрее.
В этом случае $sails
заменяет $http
app.controller("FooController", function ($scope, $sails) {
$scope.bars = [];
$sails.get("/bars", function (data) {
$scope.bars = data;
});
});
person
TheSharpieOne
schedule
02.02.2014
npm install -g sails
иsails new myproj
. - person Jess   schedule 31.01.2014