user_id = await get_user() if not user_id: return json.dumps({'status': 'error', 'message': '未登录'}, ensure_ascii=False) rec_id = params_kw.get('id', '') if not rec_id: return json.dumps({'status': 'error', 'message': '缺少id'}, ensure_ascii=False) data = {'id': rec_id, 'updated_at': curDateString()} for field in ['section_key', 'title', 'subtitle', 'section_type', 'content_type', 'is_visible', 'display_config', 'style_config', 'static_content']: if field in params_kw: data[field] = params_kw[field] if 'sort_order' in params_kw: data['sort_order'] = int(params_kw['sort_order'] or '0') try: async with get_sor_context(request._run_ns, 'ocai_cms') as sor: await sor.U('cms_sections', data) return json.dumps({'status': 'ok'}, ensure_ascii=False) except Exception as e: return json.dumps({'status': 'error', 'message': str(e)}, ensure_ascii=False)