问题陈述 :
我想为 edx 平台开发一个自定义的“XBlock”,它允许课程创建者上传图像,将文本描述与每个图像相关联,这些图像将在课程内容中显示为滑块。
我有一个处理一些静态图像的基本滑块,但是在使用 Xblock 上传图像时遇到了一些问题。基本上我认为有两种方法可以实现此功能。
使用 edx 的默认 API 上传图像资产,然后在我的 xblock 内容中检索其相对路径。但是,我不确定我应该怎么做。从 cms 的 url.py 在下面的 url 上发送请求:
url(r'^assets/{}/{}?$'.format(settings.COURSE_KEY_PATTERN, settings.ASSET_KEY_PATTERN), 'assets_handler'),
从互联网上的其他一些来源,我认为我应该为我的 xblock 创建一个自定义上传处理程序,它将文件上传到服务器。
我确实尝试使用方法:2 创建一个处理程序,但是当我使用 Ajax multipart/form-data 上传我的图像时,我遇到了以下错误。
回溯(最近一次通话最后):
文件“/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/core/handlers/base.py”,第 132 行,在 get_response
response = Wrapped_callback(request, *callback_args, **callback_kwargs)文件“/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/utils/decorators.py”,第 145 行,内部
返回 func(*args, **kwargs)文件“/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/utils/decorators.py”,第 145 行,内部
返回 func(*args, **kwargs)_wrapped_view 中的文件“/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/django/contrib/auth/decorators.py”,第 22 行
return view_func(request, *args, * *夸格斯)文件“/edx/app/edxapp/edx-platform/cms/djangoapps/contentstore/views/component.py”,第 359 行,在 component_handler
返回 webob_to_django_response(resp)webob_to_django_response webob_response.app_iter 中的文件“/edx/app/edxapp/venvs/edxapp/local/lib/python2.7/site-packages/xblock/django/request.py”,第 14 行
,AttributeError:“dict”对象没有属性“app_iter”
关于我应该如何解决这个问题的任何提示都会有很大帮助。提前致谢。