あなたは と で正しい道を進んでいnpm install -g sails
ますsails new myproj
。mongo を使用したいので、mongo 用のウォーターライン アダプターを(プロジェクト ディレクトリに)インストールし、mongonpm install sails-mongo --save
を使用するように帆を構成する必要があります。
config/adapters.js ファイルに mongo 構成を追加します。
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 を作成するには、(プロジェクト dir で) sails generate NAME
whereNAME
はモデルの名前を使用します。デフォルトでは、何でもデータベースに追加できるため、プロパティ/フィールドを制限し、場合によってはそれらを検証することもできます。それは簡単です。generate コマンドによっていくつかのファイルが作成されました。そのうちの 1 つが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
}
また、MEAN の「A」については、Angular Sailsをご覧ください。これは、sails が行っている socket.io を簡単に利用できるようにするための小さな角度付きサービスです。ソケット接続を介してすべての API を呼び出して、API をさらに軽量かつ高速にすることができます。
この場合$sails
は$http
app.controller("FooController", function ($scope, $sails) {
$scope.bars = [];
$sails.get("/bars", function (data) {
$scope.bars = data;
});
});