0

D2L から次の情報を抽出する最も効果的な方法を探しています。

特定のユーザーについて、そのユーザー登録されていないが、この部門に属するオファリングに登録されているすべての部門を検索します。

私が見る唯一の解決策は次のとおりです。

  1. GET .../enrollments/users/{id}/orgUnitsを type = Offering で List1 に呼び出します。
  2. List1 のエントリごとにGET .../courses/{courseId}を呼び出して、コースの部門情報を取得し、一意の部門の List2 をオンザフライで作成します。
  3. GET .../enrollments/users/{id}/orgUnitsを type = Department で List3 に呼び出します。
  4. List2 と List3 を比較する

ユーザーが多くのコースを教えている場合、ステップ 2 で非常に多くの呼び出しが必要になることは明らかです。

どんな提案でも大歓迎です。

4

1 に答える 1

1

学生が登録したコース オファリングのセットから始まるステップ2では、 GET /d2l/api/lp/(version)/orgstructure/(orgUnitId)/ancestors/を呼び出して、それらを含むすべての部門を見つける方が簡単な場合があります。提供するコースを作成し、リスト 2を作成します。

残念ながら、Valence Learning Framework では、組織構造に関する set-predicate API 呼び出しは実際には提供されません (特定の orgUnit Yが別の orgUnit Xの子孫であるかどうかを判断するためなど)。

于 2014-08-11T18:00:35.957 に答える