EDX:如何为新创建的课程设置默认高级组件

时间:2015-06-25 13:19:05

标签: edx openedx

我创建了一个xblock,现在我想将此xblock设置为默认xblock作为每个新创建的课程的高级组件。

感谢。

3 个答案:

答案 0 :(得分:2)

解决此问题的正确方法是编辑CourseFields文件下的common/lib/xmodule/xmodule/course_module.py类。您会发现有一个名为advanced_modules的类变量,其类型为List。你可以做这样的事情

advanced_modules = List(
    display_name=_("Advanced Module List"),
    default=[], # this is where you add default values 
    help=_("Enter the names of the advanced components to use in your course."),
    scope=Scope.settings
)

答案 1 :(得分:0)

您需要将XBlock添加到高级组件列表中。在CMS设置文件中,添加:

ADVANCED_COMPONENT_TYPES.append('your_xblock')

答案 2 :(得分:0)

设置默认高级组件

编辑以下文件

cms/djangoapps/contentstore/views/components.py

将以下行添加到函数'get_component_templates()' 之后

if isinstance(course_advanced_keys, list):

添加

course_advanced_keys.append('your_xblock')