작성할 발랑 학습 프레임 워크 API를 사용하는 방법 코스 제공을위한 섹션은 특이합니다. 더 하위 조직 단위 (어떤 부분, 어떤 그룹, 아무것도)이없는 빈 물론, 시작 가정 :
GET /d2l/api/lp/1.3/orgstructure/113459
> {"Name": "Extensibility 106",
"Identifier": "113459",
"Type": {"Name": "Course Offering",
"Code": "Course Offering",
"Id": 3},
"Code": "EXT-106"}
GET /d2l/api/lp/1.3/orgstructure/113459/children
> []
섹션 속성와 과정을 초기화합니다. 당신이해야 할 첫 번째 일은 코스 제공을위한 섹션 속성을 정의하는 것입니다 : 코스 제공에서 어떤 종류의 섹션을 만들고 싶습니까? 강좌 오퍼링의 섹션 속성을 만들려면 SectionPropertyData 블록을 사용합니다.
{"AutoEnroll": true,
"EnrollmentQuantity": 10,
"EnrollmentStyle": 2,
"RandomizeEnrollments": true}
을 지금이와 과정을 초기화 : 여기 (EnrollmentStyle
2 NumberOfSectionsAutoEnrollment
에 해당) "나는이 부분으로, 무작위,이 과정은 학생들을 자동으로 등록 할 10 개 섹션과를 갖고 싶어"라는 하나 설정, 우리는이 경로를 차단을 PUT , 만든 첫 번째 기본 섹션 (들)이 있습니다
이 호출로, 우리는 지금이 과정 제공의 자식으로 10 개 섹션을 만든 공지 사항 것을 PUT /d2l/api/lp/1.3/113459/sections/
> [{"SectionId":113460,
"Name":"Section 1",
"Description":{"Text":"","Html":""},
"Enrollments":[]},
...
{"SectionId":113469,
"Name":"Section 10",
"Description":{"Text":"","Html":""},
"Enrollments":[]}
]
, 백엔드 서비스는 자동으로 이름 (및 코드)을 생성합니다. 그들.
사실 뒤에 새 섹션을 추가하십시오. 이제 열한 번째 섹션을이 코스에 추가하려고한다고 가정합니다. 첫째, 우리는 새로운 섹션의 속성에 대한 SectionData
블록을 사용해야합니다
{"Name": "Section 11",
"Code": "Sec11",
"Description": {"Content": "New Section Descr.", "Type": "Text} }
(주 : 새 섹션을 만들려면이 블록을 형성 할 때 Description
속성의 RichTextInput
형 구조를 사용합니다.서비스에서 섹션의 속성을 가져 오면 대신 RichText
속성을 사용하여 설명을 씁니다.
POST /d2l/api/lp/1.3/113459/sections/
> {"SectionId":113470,
"Name":"Section 11",
"Description":{"Text":"Description","Html":""},
"Enrollments":[]}
당신은 새로 만든 섹션의 속성을 다시 얻을 것이다 :이 프레임 워크에 새로운 devs를위한 공통 끈적 점)이 경로를 차단하는 그런
, 당신 POST입니다.
요약. 그래서 "왜 PUT하고 POST합니까?" 네, 조금 혼란이지만, 그것을 이런 식으로 생각 :
PUT의 첫 번째 사용, 결과적으로 (갱신은 "섹션 속성"코스 제공에 대한 속성입니다 코스 오퍼링의 섹션 속성이 처음 정의되면 부작용으로 백엔드에서 새 설정과 함께 진행해야하는 섹션 조직을 만듭니다.
POST의 두 번째 용도는 새 조직 단위 (새 섹션)를 만들고이를 교육 과정에 할당하는 것입니다.
문제가있었습니다. 고맙습니다! – Dan
감사! 당신은 내가 한 것과 똑같은 말을했지만, 더 적은 단어로 말했습니다! 8) –