과거에 node.js, express 및 angular.js로 웹 앱을 만들었습니다. 새 프로젝트를 시작 중이며 MongoDB도 사용하고 싶습니다. 그것은 MEAN 스택이 될 것입니다. MEAN 만 사용하면 http://mean.io/ 로 프로젝트를 시작할 수 있습니다 .
이제 저는 과거에 REST API를 작성했으며 매우 설득력있는 sails.js에 대해 들었습니다. 자동으로 REST API를 생성 할 수 있습니다.
그래서 제 질문은 MEAN 스택과 sails.js로 새 프로젝트를 시작하기 위해 어떤 단계를 따를 것 입니까?
오늘은 옵션 2를 시도해 보겠습니다.하지만 다른 사람들에게 어떤 단계가 효과가 있었는지 알게되어 매우 기쁩니다.
대단히 감사합니다!
및와 함께 올바른 길을 npm install -g sails
가고 sails new myproj
있습니다. mongo를 사용하려면 mongo 용 워터 라인 어댑터 (프로젝트 디렉토리에 있음) 를 설치하고 mongonpm 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
where NAME
is the model of the model을 사용합니다. 기본적으로 데이터베이스에 무엇이든 추가 할 수 있으므로 속성 / 필드를 제한하고 유효성을 검사 할 수도 있습니다. 그것은 간단합니다. 생성 명령은 몇 개의 파일을 생성했으며 그중 하나는 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 env var 또는 로컬 구성 에서 변경할 수 있습니다.
module.exports = {
port: 80
// ... more config things
}
또한 MEAN의 'A'는 Angular Sails를 확인하세요 . 그것은 당신을 위해 항해하는 socket.io 일을 쉽게 활용할 수 있도록 작은 각도 서비스입니다. 소켓 연결을 통해 모든 API를 호출하여 더 가볍고 빠르게 만들 수 있습니다.
이 경우에 $sails
대체합니다$http
app.controller("FooController", function ($scope, $sails) {
$scope.bars = [];
$sails.get("/bars", function (data) {
$scope.bars = data;
});
});
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다