수색…


비고

Sails에는 하나 이상의 데이터베이스와의 상호 작용을 극적으로 단순화하는 데이터 저장소와 무관 한 도구 인 Waterline이라는 강력한 ORM / ODM이 설치됩니다. 기본 데이터베이스 상단에 추상화 계층을 제공하여 벤더 특정 통합 코드를 작성하지 않고도 데이터를 쉽게 쿼리하고 조작 할 수 있습니다.

기본 모델

이 예제는 Sails.js에서 간단한 모델을 정의하는 방법을 보여줍니다.

다음을 입력하여 빈 모델 파일을 생성 할 수 있습니다.

sails generate model car

api/models/ 에서 새 파일 Car.js 를 찾을 수 있습니다.

다음으로 몇 가지 세부 사항을 기입하십시오.

modules.exports = {

  tableName : 'cars',
  connection : 'mongodb',

  attributes : {

    id : { 
      type : 'integer', 
      unique : true, 
      primaryKey : true, 
      autoIncrement : true
    },

    brand : {
      type : 'string',
      size : 25
    },

    description : { 
      type: 'text', 
      defaultsTo : ''
    },
    
    price : {
      type : 'float',
      required : true
    },
                  
    seats : {
      type : 'integer'
    },
        
    sell_date : {
      type : 'datetime'
    },
        
    has_cooler : { 
      type : 'boolean',
      columnName : 'cooler'
    },
                       
    chassis_number : {
      unique : true,
      type : 'string'
    },

    color : {
      type : 'string',
      enum: ['white', 'red', 'black']
    }

  }

};

위의 예는 가능한 모든 모델 옵션을 사용합니다. 아래에서 설명합니다.

1. tableName

이 매개 변수는 데이터베이스에서 작성 될 테이블의 이름을 정의합니다. 정의되지 않은 경우 모델 이름이 사용됩니다 (이 예에서는 car ).

2. 연결

이 특정 모델에 사용되는 데이터베이스 연결을 정의합니다. 이 연결의 세부 사항은 config/connections.jsmongodb 키 아래에 정의되어 config/connections.js . 다음은 연결 형식입니다.

mongodb : {

  // The driver that connect our models with the database
  adapter : '<adapter>',

  // The database parameters
  user : '<username>',
  port : <port>,
  host : '<host>',
  database : '<database>'

}

3. 속성

각 속성은 모델에 대한 데이터베이스 테이블의 C 럼을 참조합니다. 이 예에서는 9 개의 열이 생성됩니다. 각 열은 다음 키 중 하나 이상으로 구성 할 수 있습니다.

  • type : 열의 데이터 형식입니다. 이 페이지 는 사용 가능한 모든 유형을 나열합니다.
  • unique : true이면 데이터베이스에 이미이 열에 대해 동일한 값을 가진 개체를 만들려고하면 오류가 발생합니다.
  • primaryKey : true이면 열이 기본 키로 작동합니다.
  • autoIncrement : 시퀀스는 자동 증가 가능 숫자가 0부터 시작하는 열과 연관됩니다.
  • size : 열의 최대 길이.
  • required : true 인 경우 null이 될 수 없습니다.
  • columnName : 데이터베이스의 열을 구성합니다. 기본값은 속성 이름입니다.
  • enum : 속성에 대해 가능한 옵션의 배열을 설정할 수 있습니다.


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow