1

新しい YAML ドキュメントの定義に取り組んでいますが、ファイルを処理しようとすると、yamllint から次のエラーが表示されます。

>syntax error on line 3, col 10: ` suites: '

テストを実行すると、PyCharm で次のエラーが発生します。

ScannerError: " "、2 行目、11 列目では値のマッピングは許可されていません<string>: 名前: testFirstNameLower

次のコードの場合:

DataMart\Users: 
  name: testFirstNameLower
   suites:
     - suite: dataMart
     - suite: userDim
   dataset: 
     source:  etlUnitTest 
       table:  users

正しくフォーマットされているように見えますが、何が間違っているのかわかりません...

4

1 に答える 1

1

DataMart\Users各ユーザーにname、 のシーケンス、suites、およびがある一連のユーザーを含めることになっている場合、datasetインデントを少しやりすぎており、各ユーザーをシリーズとして処理していません。(このオンライン パーサーは、通常、yaml を処理するときに使用するものです。)

代わりにこれを試してください:

DataMart\Users: 
  - name: testFirstNameLower
    suites:
      - suite: dataMart
      - suite: userDim
    dataset:
      source: etlUnitTest 
      table: users

...次の json に対応します。

{
  "DataMart\\Users": [
    {
      "name": "testFirstNameLower", 
      "suites": [
        {
          "suite": "dataMart"
        }, 
        {
          "suite": "userDim"
        }
      ], 
      "dataset": {
        "source": "etlUnitTest", 
        "table": "users"
      }
    }
  ]
}

2 番目のサンプル ユーザーを追加した yaml を次に示します。

DataMart\Users: 
  - name: testFirstNameLower
    suites:
      - suite: dataMart
      - suite: userDim
    dataset:
      source: etlUnitTest 
      table: users

  - name: secondname
    suites:
      - suite: secondDataMart
      - suite: secondUserDim
    dataset:
      source: secondEtlUnitTest 
      table: secondUsers
于 2014-05-19T18:43:18.103 に答える