일부 비디오와 함께 edge.edx.org에 코스가 있습니다. 코스를 내보내고 Open edX 인스턴스 (eucalyptus.1)로 가져오고 싶었지만 이 오류를 얻을 것이다 : 내 보낸 XML 파일의 비디오 블록의 내용을 검사에내 보낸 코스에서 다른 비디오 포맷을 edge.edx.org
2017-11-21 04:47:42,307 ERROR 3995 [xmodule.vertical_block] vertical_block.py:122 - Unable to load child when parsing Vertical. Continuing...
Traceback (most recent call last):
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/vertical_block.py", line 119, in definition_from_xml
child_block = system.process_xml(etree.tostring(child, encoding='unicode'))
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/modulestore/xml.py", line 196, in process_xml
id_manager,
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py", line 1595, in xblock_from_node
block = block_class.parse_xml(node, self, keys, id_generator)
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/xml_module.py", line 559, in parse_xml
return super(XmlParserMixin, cls).parse_xml(node, runtime, keys, id_generator) # pylint: disable=bad-super-call
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/x_module.py", line 1074, in parse_xml
block = cls.from_xml(xml, runtime, id_generator)
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py", line 527, in from_xml
field_data = cls._parse_video_xml(xml_object, id_generator)
File "/edx/app/edxapp/edx-platform/common/lib/xmodule/xmodule/video_module/video_module.py", line 788, in _parse_video_xml
course_id=course_id
File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/edxval/api.py", line 508, in import_from_xml
create_video(data)
File "/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/edxval/api.py", line 104, in create_video
raise ValCannotCreateError(serializer.errors)
ValCannotCreateError: {'duration': [u'This field may not be null.'], 'edx_video_id': [u'This field may not be blank.'], 'client_video_id': [u'This field may not be null.']}
것은, 내가 그 하나의 차이 (edx.edx.org)와 내가 만든 비디오 과정을 볼 것이며, 내 로컬 인스턴스 (eucalyptus.1)로 내 보냅니다. 에지에서 비디오에 대한 XML 내용 : 지역 (eucalyptus.1) 인스턴스에서
<video youtube="1.00:abc123123" url_name="123123123123" license="all-rights-reserved" display_name="TestVideo" download_track="true" download_video="false" edx_video_id="" html5_sources="[]" sub="abc123123" youtube_id_1_0="abc123123">
<video_asset/>
</video>
비디오 :
<video youtube="1.00:abc123123" url_name="123123123123" license="all-rights-reserved" display_name="TestVideo" download_track="true" download_video="false" html5_sources="[]" sub="abc123123" youtube_id_1_0="abc123123"/>
내 질문이있다는 것이 가능 EDX의 더 높은 버전에서 코스를 가져 오는 것입니다 더 낮은 하나 (비디오를 제외한 모든 것이 실제로 올바르게 임포트 됨), 그렇지 않은 경우, 이에 대한 알려진 해결 방법이 있습니까? 또한 오류가 해당 필드가 null이 아닐 수도 있다고 말하면 왜 처음에 내보낼 때 null로 설정됩니까?