Node.js의 MVC 프레임워크sails입니다.js(0.10.x)로 시작된 응용 개발: ORM에서 다중 다중 모형을 정의하는 방법

3682 단어 Node.jsSails.js
Node.js로 웹 응용 프로그램의 프레임워크sails를 간단하게 만듭니다.js를 사용하여 '다대다' 모델을 정의합니다.
sails.js의 업데이트 빈도가 높음♥ 이 글을 쓰는 시점과 다를 수 있으므로 버전 주의

이 글의 내용을 테스트하는 환경

  • node.js 0.10.x
  • sails.js 0.10.x
  • 다대다 의 모형 을 만들다


    "사용자"와 "음료수"로 자신이 좋아하는 음료수를 저장할 수 있다
  • 사용자'데이지'및'작은 원'
  • 음료수는'닥터 페퍼'와'코카콜라'
  • 가 있다
  • 딸의 날은 Dr. Pepper, 작은 원을 좋아한다
  • 사용자, 사용자, 사용자.js


    소스 코드의 초기 형태를 준비하다
    sails generate api User
    
    models/User.js 다음과 같은 변경 사항
    User.js
    module.exports = {
      attributes: {
        name: 'string',
        favorites: {
          collection: 'Drink',
          via: 'users',
          dominant: true
        }
      }
    }
    
    주안점
  • 사용자가 좋아하는 음료수를favorites
  • 로 정의
  • 지정된 음료의 모델 Drink는collection
  • 으로
  • via Drink.js에 정의된 속성 이름 지정
  • dominant ※ 우선 한 곳에서 실제 조작 (이번에는 별다른 의미 없음)
  • 음료수 Drink.js


    소스 코드의 초기 형태를 준비하다
    sails generate api Drink
    
    models/Drink.js 다음과 같은 변경 사항
    Drink.js
    module.exports = {
      attributes: {
        name: 'string',
        users: {
          collection: 'User',
          via: 'favorites'
        }
      }
    }
    
    주안점
  • 이 음료를 좋아하는 사용자를users
  • 로 정의
  • 사용자의 모델 User를 collection으로 지정
  • via에서 Userjs에 정의된 속성 이름 지정
  • dominant 없음
  • 실험


    사용 편의성sails console
    sails console
    
    콘솔을 시작합니다.등록 사용자HinataMadoka
    User.create({name:'Hinata'}).exec(console.log)
    => id:1
    User.create({name:'Madoka'}).exec(console.log)
    => id:2
    
    음료Dr. PepperCoca-Cola를 등록했는데 히나타는 Dr. Pepper, 마도카는 둘 다 좋아해요.
    Drink.create({name:'Dr. Pepper', users:[1]}).exec(console.log)
    => id:1
    Drink.create({name:'Coca-Cola', users:[1, 2]}).exec(console.log)
    => id:2
    
    카페 사용

    좋은 웹페이지 즐겨찾기