복붙노트

[MONGODB] 몽고에서 유효성 검사 데이터에 대한 가장 좋은 방법은 무엇입니까?

MONGODB

몽고에서 유효성 검사 데이터에 대한 가장 좋은 방법은 무엇입니까?

삽입 또는 MongoDB를로 업데이트되고, 검증 데이터에 가장 좋은 방법은 무엇입니까? 그것은 서버의 어떤 종류의 유효성 검사를 수행 자바 스크립트 코드를 실행 작성하는 것입니다?

해결법

  1. ==============================

    1.MongoDB를 3.2에서 시작 그들은 문서 검증 (슬라이드)를 추가했다.

    MongoDB를 3.2에서 시작 그들은 문서 검증 (슬라이드)를 추가했다.

    당신은 ($ geoNear, $ 근처 $ nearSphere, $ 텍스트, $ 제외) 거의 모든 몽고 쿼리 연산자를 사용하여 검증 옵션을 사용하여, 각각의 컬렉션에 대한 유효성 검사 규칙을 지정할 수 있습니다.

    발리, 사용과 새 컬렉션을 만들려면 :

    db.createCollection("your_coll", {
      validator: { `your validation query` }
    })
    

    기존 컬렉션에 유효성 검사기를 추가하려면 검사기를 추가 할 수 있습니다 :

    db.createCollection("your_coll", {
      validator: { `your validation query` }
    })
    

    당신이 이전 컬렉션 발리를 만들 때, 이전 데이터는 (당신은 이전 데이터에 대한 응용 프로그램 수준 유효성 검사를 쓸 수 있습니다) 확인할 수 없습니다에만 삽입 / 업데이트에 대한 검증 작업. 또한 validationLevel와 validationAction이 문서가 유효성 검사를 통과하지 않을 경우 무슨 일이 일어날 지 알 지정할 수 있습니다.

    삽입하려고하면 / 검증을 실패 뭔가 문서를 업데이트 (그리고 이상한 validationLevel / 액션을 지정하지 않은) 다음 슬프게도 충분히 오류가 실패 무엇을 말하지 않는다 (writeResult에 오류가 발생하고 만 얻을 기본 유효성 검사) 실패 :

    WriteResult({
       "nInserted" : 0,
       "writeError" : {
          "code" : 121,
          "errmsg" : "Document failed validation"
       }
    })
    
  2. ==============================

    2.응용 프로그램이 데이터의 유효성을 검사해야하므로 MongoDB를 제약 조건 또는 트리거가 없습니다.

    응용 프로그램이 데이터의 유효성을 검사해야하므로 MongoDB를 제약 조건 또는 트리거가 없습니다.

    또한 잘못된 데이터가 체크 하루에 한 번 이상하면 것을 자바 스크립트를 작성할 수 있습니다. 당신은 응용 프로그램의 비즈니스 로직의 품질을 확인하기 위해 사용할 수 있습니다.

  3. ==============================

    3.나는 앱이 이런 종류의 일을 처리하는 것이 정상적인 것 같아요. 데이터가 어떤 방법으로 유효하지 않은 경우, 사용자는 당신이 발견 한 어떤 오류가 정정 될 때까지이 데이터 저장소에 추가하자하지 않습니다.

    나는 앱이 이런 종류의 일을 처리하는 것이 정상적인 것 같아요. 데이터가 어떤 방법으로 유효하지 않은 경우, 사용자는 당신이 발견 한 어떤 오류가 정정 될 때까지이 데이터 저장소에 추가하자하지 않습니다.

  4. ==============================

    4.MongoDB의 데이터 파일에 기록 할 때 2.4에서 시작하여 MongoDB는 mongod 및 mongorestore에 대한 기본 BSON 개체 유효성 검사를 할 수 있습니다. MongoDB를 데이터베이스에 유효하지 않거나 잘못된 BSON를 삽입에서이 방지 모든 클라이언트를. 출처 : http://docs.mongodb.org/manual/release-notes/2.4/

    MongoDB의 데이터 파일에 기록 할 때 2.4에서 시작하여 MongoDB는 mongod 및 mongorestore에 대한 기본 BSON 개체 유효성 검사를 할 수 있습니다. MongoDB를 데이터베이스에 유효하지 않거나 잘못된 BSON를 삽입에서이 방지 모든 클라이언트를. 출처 : http://docs.mongodb.org/manual/release-notes/2.4/

  5. ==============================

    5.난 그냥 젠드 프레임 워크 기반의 응용 프로그램 내에서 함께하여 MongoDB와 PHP를 사용하기 시작했습니다.

    난 그냥 젠드 프레임 워크 기반의 응용 프로그램 내에서 함께하여 MongoDB와 PHP를 사용하기 시작했습니다.

    I (예 User.php 사용자 컬렉션에 매핑) MongoDB의 각 컬렉션 1 개 객체를 만들었다. 각 개체는 매핑 및 필드가 무엇을해야 무엇을 수집 알고있다. 또한, 필터 (Zend_Filter_Input) 및 검증 (Zend_Validate)의 각 필드에 적용되어야 하는지를 알고있다. MongoDB를 삽입 () 또는 저장 ()를 수행하기 전에, 나는 모든 유효성 검사기를 실행하는) $ 객체 -> isValid (실행합니다. 그들이 경우 모든 패스 isValid ()는 true를 돌려줍니다, 나는 그렇지 않으면 나는 오류를 표시, 삽입 ()을 실행하거나) (저장 진행합니다.

  6. from https://stackoverflow.com/questions/2259429/what-is-the-best-way-to-validate-data-in-mongo by cc-by-sa and MIT license