• [问题求助] 开发一个题库平台需要多久,用若依框架合适码
    开发一个题库平台需要多久,用若依框架合适码
  • [课程学习] 【云学堂·华为云码道推荐官第2期】活动已上线,邀好友体验领300元云资源券!
    【活动时间】2026年 08月 17日 - 2026年 09月 14日【活动报名】立即报名【活动福利】有效邀请人数云资源代金券≥5人100元≥10人200元≥15人300元邀请链接:报名后点击页面【分享有礼】按钮生成专属邀请链接邀请人参与流程:①活动报名→②分享有礼→③一键开通华为云码道→④下载安装并体验华为云码道产品(需Tokens消耗>0)或完成任意一个微认证任务(指定微认证课程学习进度100%或通过 华为云码道(CodeArts)鸿蒙应用开发实战 微认证并获取证书)被邀请人参与流程:①通过好友分享的专属链接活动报名→②首次一键开通华为云码道→③下载安装并体验华为云码道产品(需Tokens消耗>0)或完成任意一个微认证任务(指定微认证课程学习进度100%或通过 华为云码道(CodeArts)鸿蒙应用开发实战 微认证并获取证书) 【活动规则】1、活动对象:华为云注册且完成实名认证的用户均可参加;活动有效邀请成功后,邀请人可获得相应奖励。 2、邀请人需满足以下全部条件,完成有效邀请任务后才可以获得对应激励——邀请人无需是华为云码道新用户:(1) 登录活动页面且“活动报名”成功,点击页面“分享有礼”生成专属邀请链接或二维码,成为邀请人;分享邀请二维码/链接给好友,被邀请好友通过专属链接完成报名。(2)一键开通华为云码道,下载安装并体验华为云码道产品(需Tokens消耗>0)或完成任意一个微认证任务(指定微认证课程学习进度100%或通过 华为云码道(CodeArts)鸿蒙应用开发实战 微认证并获取证书) 3、被邀请人需在活动期间内满足以下全部条件,才被记录为1个【有效邀请】:(1)通过好友专属链接报名成功后,点击活动页面上一键开通华为云码道(被邀请人必须是首次开通),如该被邀请人之前已经开通/激活/下载华为云码道则不属于有效邀请,每个华为云账号仅可被有效邀请一次。(2)被邀请人需要首次开通华为云码道,下载安装并体验华为云码道产品(需Tokens消耗>0)或完成任意一个微认证任务(指定微认证课程学习进度100%或通过 华为云码道(CodeArts)鸿蒙应用开发实战 微认证并获取证书) 4、奖励说明:(1)邀请人在活动期间,每个【有效邀请】可获得20元云资源代金券,有效邀请≥5人才可申请奖励;被邀请人及邀请人同时还可在开发者成长中心领取更多积分兑换更多激励。(2)奖励按有效邀请人数最高档位发放,不重复叠加。例如有效邀请12人,获得200元券,而非100+200的叠加;本期活动最高可获得300元云资源券。(3)邀请数据公示:【分享有礼】弹窗显示的人数仅为邀请报名成功的人数,并非【有效邀请】人数;活动期间,工作日每周二、周五下午18点前会在指定论坛贴公示有效邀请人数。(4)活动结束后5个工作日内公示最终有效邀请人数名单,公示期为7个工作日,公示期结束后15个工作日内发放云资源券奖励。(5)云资源券有效期:自发放之日起 60 天内有效,逾期即失效,不可补发; (6)云资源券使用说明:发放的代金券在额度范围内可多次用于抵扣账单或订单,直至余额用尽,可支持新购、续费等订单场景,实际是否可抵扣具体以订单详情为准。 更多AI精品课程与实验学习,可点击华为云学堂AI专题页查看!
  • [公告] CANN社区任务8月17日正式上新!6大任务上线,单个任务最高8.7万+激励!
     CANN社区任务再上新!8月17日10:00开启任务报名六大任务上线,32万+奖金池开放!扫码参与活动报名,抢先了解任务详情 
  • [经验] 华为云码道代金券使用方法(以兑换基础版为例)
    1、  访问码道官网:https://developer.huaweicloud.com/codeartsco.html?source=one_step_opc&sourcead=opc_grow 点击“立即体验”2、输入账号密码进行登录或者选择注册:3、点击“立即体验”4、点击导航栏“价格”按钮,选择基础版点击“立即购买”5、在订阅管理页面中,选择码道体验版,然后点击“退订”按钮,按照页面提示,完成退订操作(退订不影响后续继续订阅)6、 完成退订后,再次访问价格页面页面,然后选择 专业版 点击“立即购买”7、 在支付页面,选择相应金额的代金券进行支付。注意实付金额。8、至此购买完成。
  • [技术干货] 额度、代金券、主账号、一个或多个子账号关系
    额度、代金券、主账号、一个或多个子账号关系额度与代金券关系:额度等同于预算,按照自然年管理,额度有效期≤60天(不可以跨年)。每个项目额度有效期不一样,项目额度有效期在申请页面时申请人自己填写,申请页面字段为“额度有效期”额度兑换成代金券后,代金券默认有效期三个月。代金券不可以回退,支付产品时只能选择其中一张代金券代金券可以跨年使用,到期失效额度、代金券、主账号、一个或多个子账号:前提条件:主账号必须已授权。配置ModelArts Studio(MaaS)访问授权/ 创建IAM用户并授权使用ModelArts Studio(MaaS)配置ModelArts Standard访问授权/创建IAM用户并授权使用ModelArts:参考文档额度转换代金券:参考文档签署开发者协议:访问华为云开发者官网(cid:link_3)即可签署开发者协议(需要登录账号)视频帮助:创建用户组并授权操作流程、创建IAM用户操作流程,请参考文档   
  • 第38期-我没绑定邮箱,现在才绑定邮箱,发奖邮件能不能重新发一个给我
    如题,第38期-我没绑定邮箱,现在发奖邮件能不能重新发一个给我
  • [互动交流] OBS多语言SDK功能与文档焕新,开发体验更流畅(未完待续🚀)
    🚀 OBS多语言SDK功能与文档焕新,开发体验更流畅长期以来,OBS 各语言 SDK 在功能覆盖上存在一定差异,给开发者在技术选型与跨语言项目协作中带来了诸多不便。相信不少开发者都遇到过类似情形:在某语言 SDK 文档中查阅到一项新特性的使用示例,切换到另一语言项目时却发现该能力尚未支持;或是在团队内不同技术栈之间进行方案复用,却因 SDK 功能不统一而不得不额外封装适配层,这对开发效率与体验都造成了客观影响。这一“语言时差”问题,OBS 团队始终高度关注,并致力于从根本上加以解决。过去半年,OBS 团队系统梳理了各语言 SDK 的功能差异清单,以开发者最高频使用的能力集合为基准,对各主流语言 SDK 进行了功能补全与文档体系焕新。本次优化,OBS 主流语言 SDK 的高优能力正在逐步拉齐。本次更新覆盖 Java、Python、C、Go、BrowserJS、PHP、Node.js 七个语言版本,涵盖功能新增与文档优化两大维度。具体更新情况如下:语言(版本)功能新增文档优化Java(v3.26.6)新增桶在线解压、DIS策略、镜像回源、WORM、归档直读、桶加密配置;优化流式上传、依赖冲突、分段上传、上传进度、自定义头域、批量删除等场景;新增临时URL、base64图片上传、对象标签、OkhttpEventListener日志、断点续传回调等示例Python(v3.26.6)新增桶清单、在线解压、对象标签、桶级WORM、DIS策略、归档直读策略;并行文件系统修改写对象新增异步断点续传(含暂停/取消)、MD5校验、恢复指定路径对象、统计文件夹大小、多段复制、WORM创建桶、多范围下载、临时URL指定版本下载、断点续传回调等示例;优化桶加密、自定义域名证书托管C(v3.26.6)新增自定义HTTP头域、指定端口范围;创建/列举并行文件系统;桶自定义域名管理;上传/下载单链接限速;对象生命周期新增配置option、批量复制/上传/下载/恢复对象等示例;优化复制对象、错误码、临时URL授权访问Go(v3.26.6)新增上传回调参数及结果获取;HeadObject检查对象存在;获取上传/下载进度;列举并行文件系统对象新增单链接限速场景下生成授权URL并下载对象(含指定版本)示例;优化创建并行文件系统、设置对象元数据BrowserJS—新增桶归档直读、恢复归档/深度归档、桶加密、对象标签、取消分段上传、复制对象等操作指导;新增MD5校验、批量上传/下载/复制对象示例PHP—新增清理多段上传碎片、创建/列举并行文件系统操作指导;新增批量上传/复制/下载/恢复对象示例Node.js—新增桶归档直读、恢复归档/深度归档、获取下载进度操作指导;新增分段上传、MD5校验、批量上传/复制/下载对象示例本次拉齐的核心价值:本次升级完成后,开发者无需再因“某功能在特定语言 SDK 中是否支持”而反复确认或调整技术方案,技术选型可完全回归业务需求与团队技术栈偏好。官方文档中此前常见的“该功能仅支持 XX 语言”等限制说明,将在本次更新后大幅减少,显著降低开发者在多语言环境下的学习成本与迁移成本。各语言最新版本已全量推送,欢迎升级体验。请点击后续规划:更多语言的 SDK 功能对齐工作已在持续推进中,后续将逐步覆盖更多技术栈,确保广大开发者无论使用何种语言,均可获得一致的开发体验。如您在升级或使用过程中遇到任何问题,欢迎在评论区留言反馈,OBS 团队将及时响应并跟进处理。各语言 Release Notes 详见下方链接:语言版本功能更新文档优化Javav3.26.6支持桶在线解压策略特性支持桶DIS策略特性支持镜像回源特性支持WORM特性支持归档直读功能支持桶加密配置支持下载对象时限速优化上传段支持流式上传相关内容优化依赖缺失和依赖冲突的解决方法优化列举分段上传任务相关内容优化获取上传对象进度的内容优化有关发送请求时添加自定义头域相关内容优化批量删除文件夹下的所有对象相关内容补充通过临时URL访问OBS的代码示例优化传输时校验文件一致性的内容补充上传base64编码图片的代码示例补充设置、获取、删除对象标签的代码示例补充如何配置OkhttpEventListener日志与打印详细阶段日志补充使用断点续传上传时设置上传回调的代码示例PythonV3.26.6支持配置桶清单。支持配置在线解压策略。支持并行文件系统修改写对象。支持配置对象标签。支持配置桶级默认WORM策略。支持配置桶DIS策略。支持配置桶归档直读策略。 补充异步断点续传上传、暂停和取消的代码示例。优化桶加密内容,通过指定加密方式加密桶。优化桶自定义域名里有关证书托管的内容。补充使用MD5校验文件一致性文档。补充恢复指定路径下的对象的代码示例。补充统计文件夹大小的代码示例。补充多段复制的代码示例。补充创建桶时开启WORM开关的代码示例。补充下载对象时指定多个范围的代码示例。补充临时url指定版本号下载对象的代码示例。补充断点续传上传回调的代码示例。Cv3.26.6支持在发起请求时携带自定义HTTP头域支持指定eth0端口范围支持创建和列举并行文件系统支持设置、获取与删除桶的自定义域名支持上传对象时对单链接请求的带宽进行限制支持下载对象时对单链接请求的带宽进行限制支持设置对象生命周期 补充配置option相关代码示例优化复制对象相关代码示例优化服务端错误码的内容以及相关代码示例优化使用临时URL进行授权访问的内容及相关代码示例补充批量复制对象相关代码示例补充批量上传对象相关代码示例补充批量下载对象相关代码示例补充批量恢复对象相关代码示例Gov3.26.6支持上传对象时支持设置回调参数,并将回调结果返回给用户支持通过HeadObject接口检查指定桶中是否存在指定的对象支持获取上传对象的进度支持获取下载对象的进度支持列举并行文件系统内的对象优化创建并行文件系统的内容补充该场景的代码示例:生成在单链接限速场景里下载对象的带授权信息的URL,并下载对象补充该场景的代码示例:生成在单链接限速场景里下载指定版本对象的带授权信息的URL,并下载对象优化有关设置对象元数据相关参数BrowserJS-  不涉及补充设置、获取与删除桶归档存储对象直读策略操作指导补充恢复归档或深度归档存储对象操作指导补充设置、获取与删除桶加密配置操作指导补充设置、获取与删除对象标签操作指导补充取消分段上传任务操作指导补充复制对象操作指导补充MD5校验文件一致性的示例代码补充批量上传对象的代码示例补充批量下载对象的代码示例补充批量复制对象的代码示例PHP-  不涉及补充清理多段上传任务碎片操作指导补充创建和列举并行文件系统操作指导补充批量上传的代码示例补充批量复制的代码示例补充批量下载的代码示例补充批量恢复对象的代码示例Node.js-  不涉及补充设置、获取、删除桶归档直读策略的操作指导补充恢复归档或深度归档存储对象的操作指导补充下载对象时获取下载进度的操作指导补充文件分段上传的代码示例补充使用md5校验文件一致性的示例代码补充批量上传对象的代码示例补充批量复制代码示例补充批量下载对象的代码示例
  • [问题求助] 第35期的发奖邮件什么时候发呢?
    第35期的发奖邮件什么时候发呢?
  • [热门活动] 码动泉城 · AI Meetup 济南站
    AI 正在重塑软件开发的底层逻辑。从代码生成到智能体协同,从单工具提效到全链路赋能,“AI + 开发”已经不再是锦上添花的实验,而是每位开发者必须面对的新范式。然而,工具割裂、场景脱节、实践模糊…… 痛点依然存在——我们离真正的“智能开发”还有多远?这个八月,AtomGit 联合华为云 HCDG 走进济南,带来一场聚焦“开源 × AI”落地的技术沙龙。我们邀请了来自一线的技术专家,围绕智能编程助手设计、鸿蒙开发实战、智能体集群开发、生产级 AI Agent 平台等话题,分享亲身实践经验。这不是一场坐而论道的峰会,而是一次开发者之间的深度对话——来泉城,一起“码”出新范式。时间:2026 年 8 月 15 日(星期六)14:00地点:山东省济南市历下区经十路 11001 号 中国人寿大厦北楼 41F 4108扫描海报二维码或点击链接,立即报名 👇  
  • [任务攻略] 免费Token领取实操:轻轻松松节约几百块
    做 AI 应用,最烧钱的就是 Token。我最近在华为云开发者发现了个成长中心:日常做点任务攒积分,积分可以换代金券,代金券能抵扣调大模型、ModelArts 这些按 Token 收费的服务。下面是门槛最低的几个任务的操作记录。一、低门槛任务清单(按操作成本从低到高)引路地址:开发者成长中心顺序任务周期积分操作成本1每日签到每日+10 / 天极低,点一下2实名认证一次性+50低,上传证件,兑换代金券必要条件3首次开通华为云码道 CodeArts一次性+50低,点开通4使用智能问答(码道)每日+30低,对话一下5发布文章每日+60中,写篇博客6参加开发者活动每周+10低,报名7体验开发者空间每周+20低,访问8使用云开发环境每周+30低,打开即用9创建云开发环境(首次)一次性+50低,简单配置下二、走通流程(演示)先登录:开发者成长中心STEP 1 实名认证 +50点击 去完成根据页面要求完成实名认证STEP 2 连续签到,每天签到 +10成长中心右上角 签到STEP 3 首次开通码道,用智能问答对话一下 +80首次开通,点击 去完成开通后 打开码道 右下角对话框进行对话STEP 4 发一篇博客 +60点击 写博客 发表STEP 5 报名一个开发者活动 +10、开发者空间来个丝滑小连招+100开发者活动:选个感兴趣的活动 报个名开发者空间小连招:① 进入页面 ② 创建云开发环境 ③ 点 开机STEP 6 攒够分,换代金券去成长中心页面下方 进行兑换STEP 7 代金券抵扣 Token 消耗兑换成功后,自动激活,代金券会直接发到 账号 里根据自己的需要抵扣调用大模型的费用账单,或者买Token Plan 个人版套餐直接抵扣三、一个月能攒多少当你马上就要用代金券:上面几个任务做一遍立马能兑20元连续完成8天:能兑100元按月做完,可薅330元:一次性的 +150每日可做的 +100 × 30 = 3000每周可做的 +60 × 4 = 240Tips:可以用agent自动跑任务,解放双手
  • [训练营] 食堂菜品评价管理系统
    基于华为云码道与ECS构建食堂菜品评价管理系统一、概述1.1 案例介绍本案例面向前端初学者,演示如何借助华为云码道(CodeArts)AI IDE,使用 Vue 3、HTML、CSS 和 JavaScript 构建一个食堂菜品评价管理系统,并将项目部署至华为云弹性云服务器 ECS。系统同时包含顾客端和管理端。顾客可以浏览菜品、搜索筛选、查看详情、进行多维度评分并提交评价;管理员可以维护菜品和分类、处理评价、回复顾客、查看统计数据并导出 CSV 文件。为降低学习门槛,本案例采用单文件结构,页面、样式、交互逻辑和初始数据均集中在 index.html 中,运行数据保存在浏览器 localStorage。整个案例不开发独立后端,也不连接 MySQL、Redis 等数据库,适合用于前端学习、原型验证和个人演示。完成本案例后,您将获得:1 个约 1200 行的 index.html;1 套顾客端菜品浏览与评价功能;1 套管理员菜品与评价管理功能;1 套数据统计与 CSV 导出功能;1 个部署在华为云 ECS、可通过公网 IP 访问的在线网页。1.2 适用对象个人开发者;高校学生;前端初学者;具备少量 HTML、CSS、JavaScript 基础,希望完成第一个可部署项目的开发者。1.3 案例时间在已有项目代码的基础上完成环境准备、功能验证和 ECS 部署,预计需要 90~120 分钟。从零开始借助华为云码道完成需求梳理、页面生成、功能迭代和部署,建议预留 3~5 小时。1.4 案例流程说明:登录华为开发者空间,进入华为云码道(CodeArts)AI IDE,创建前端项目;明确顾客端、管理端、数据存储和部署方式等核心需求;构建顾客端,完成菜品浏览、搜索筛选、详情查看和评价提交;构建管理端,完成菜品管理、分类管理、评价处理和删除日志;增加数据统计、CSV 导出、图片压缩和 localStorage 数据持久化;购买华为云 ECS,安装 Nginx,上传 index.html 并通过公网 IP 验证访问;完成体验后,根据需要释放 ECS、弹性公网 IP 等计费资源。1.5 资源总览本案例不使用数据库和独立后端服务。华为云 ECS 和弹性公网 IP 可能产生费用,实际价格与区域、规格、计费方式和使用时长有关,请以购买页面显示为准。体验完成后,请及时释放不再使用的资源,避免产生额外费用。资源名称规格或用途费用说明华为开发者空间进入开发环境及相关开发工具以实际权益为准华为云码道(CodeArts)AI IDE生成、解释和修改前端代码代金券购买专业版Vue 3前端响应式框架,通过 CDN 引入免费华为云弹性云服务器 ECSUbuntu 基础配置,用于部署静态网页¥0.0988/小时弹性公网 IP通过公网 IP 访问网页¥0.80/GBNginx提供静态网页访问服务免费开源软件浏览器 localStorage保存菜品、评价、分类和日志等数据免费二、环境和资源准备2.1 登录华为开发者空间登录华为开发者空间,进入华为云码道(CodeArts)AI IDE。建议提前准备一个可正常使用的华为云账号,并确认账号能够创建开发项目和购买 ECS 资源。2.2 准备本地开发环境本案例使用浏览器直接运行单文件项目,无需安装完整的前端工程脚手架。建议准备以下工具:Chrome、Edge 或其他现代浏览器;可编辑 HTML 的代码编辑器;华为云码道(CodeArts)AI IDE;支持 SSH 和 SCP 的终端工具;稳定的网络环境。项目采用 Vue 3 CDN 方式运行。原项目中的引用方式如下:<script src="https://unpkg.com/vue@3/dist/vue.global.prod.js"></script> 正式发布或长期维护时,建议将 @3 替换为经过验证的具体版本号,或者将 Vue 文件下载到 ECS 本地,避免外部 CDN 波动影响页面加载。2.3 准备项目目录项目结构如下:食堂菜品评价系统/ └── index.htmlindex.html 中包含:页面结构;CSS 样式;Vue 3 交互逻辑;初始菜品和分类数据;搜索筛选与表单验证;浏览器本地存储;数据统计与 CSV 导出。2.4 准备华为云 ECS部署阶段需要准备一台华为云弹性云服务器 ECS。本案例使用 Ubuntu 操作系统,静态网页对服务器性能要求较低,可根据实际需求选择基础配置。购买完成后,请记录以下信息:ECS 公网 IP;登录用户名;登录密码或私钥;安全组配置入口。安全组入方向至少需要根据实际使用开放以下端口:22:用于 SSH 登录服务器 80:用于 HTTP 网页访问 443:用于后续配置 HTTPS测试阶段通过公网 IP 访问时,最关键的是开放 80 端口。三、构建食堂菜品评价管理系统3.1 创建项目并明确需求进入华为云码道(CodeArts)AI IDE 后,新建一个前端项目,并在项目根目录创建 index.html。不要只向代码智能体输入“帮我做一个网页”,而应明确说明使用对象、核心功能、技术限制和部署方式。可使用以下需求描述:我想做一个食堂菜品评价管理系统。 要求: 1. 同时包含顾客端和管理端。 2. 顾客可以浏览、搜索和评价菜品。 3. 管理员可以添加、修改和删除菜品。 4. 不开发后端,数据先保存在 localStorage。 5. 所有 HTML、CSS 和 JavaScript 尽量放在一个 index.html 中。 6. 页面要适配电脑和手机。 7. 代码要有完整的错误处理和表单验证。需求越明确,代码智能体生成的页面结构和功能越接近预期。建议先生成可运行的基础版本,再按功能模块逐步迭代,避免一次性提出过多细节导致代码难以检查。3.2 构建顾客端3.2.1 实现菜品浏览、搜索和筛选顾客端首页使用卡片形式展示菜品。每张卡片包含以下信息:菜品名称;分类;价格;原材料;平均评分;评价数量;供应状态;是否推荐;菜品图片或 Emoji。为了方便顾客查找菜品,系统提供以下筛选条件:按菜品名称和原材料搜索;按分类筛选;按食堂筛选;按窗口筛选;按早餐、午餐、晚餐筛选;按供应状态筛选;按评分筛选;按价格、评分和评价数量排序。搜索功能的核心逻辑如下:if (searchQuery.value) { const q = searchQuery.value.toLowerCase(); result = result.filter(dish => dish.name.toLowerCase().includes(q) || dish.ingredients.toLowerCase().includes(q) ); } 该逻辑会遍历菜品列表,仅保留菜名或原材料中包含搜索关键词的菜品。3.2.2 实现菜品详情弹窗顾客点击菜品卡片后,系统显示详情弹窗。弹窗内容包括:菜品完整名称;价格与分类;食堂和窗口;供应餐次;辣度;主要原材料;过敏原信息;重量和热量;已有评价。弹窗打开后锁定网页背景滚动,并支持按 Esc 键关闭,提升桌面端操作体验。3.2.3 实现多维度评价评价功能是系统的核心模块。除总体五星评分外,还支持:评价文字;匿名评价;评价标签;供应日期;早餐、午餐或晚餐选择;口味评分;温度评分;分量评分;价格合理性评分;外观与卫生评分。常用评价标签包括:味道很好 偏咸 偏淡 偏辣 油腻 温度低 分量少 价格偏高 食材不新鲜 外观一般 服务问题 其他提交评价前,系统需要检查:是否选择评分;是否填写评价内容;内容是否超过字数限制;是否选择供应日期;是否选择餐次。表单验证可以阻止不完整或格式错误的数据进入系统,并向用户显示明确的错误提示。3.2.4 实现“我的评价”顾客提交评价后,可在“我的评价”页面执行以下操作:查看历史评价;修改评价;删除评价;查看管理员回复;查看处理状态;查看评价是否被管理员隐藏。评价状态设置为:待处理 处理中 已改进 暂不采纳该功能让用户能够持续跟踪反馈处理情况,而不是提交后无法查询。3.3 构建管理端3.3.1 实现顾客端和管理端切换在页面右上角设置“顾客端”和“管理端”按钮,点击后切换不同界面。👤 顾客端 🔧 管理端当前项目中的管理端仅为前端界面切换,不具备真正的身份认证和权限控制。正式投入使用时,需要增加用户登录、管理员身份认证、后端接口和服务器端权限校验。3.3.2 实现菜品管理管理员可以:添加、修改和删除菜品;修改价格和分类;设置供应状态;设置是否上架和推荐;设置早餐、午餐或晚餐供应;填写食堂和窗口;填写辣度、重量、热量和过敏原;上传菜品图片。添加菜品时,系统检查是否存在同名菜品:const duplicate = dishes.value.find(dish => dish.name === name && (!editingDish.value || dish.id !== editingDish.value.id) ); if (duplicate) { dishFormErrors.name = '已存在同名菜品'; return; } 该逻辑可避免管理员重复添加同名菜品。3.3.3 实现图片上传和压缩菜品图片以 Base64 数据保存在浏览器中。如果直接保存原图,容易占用较多 localStorage 空间,因此上传前需要压缩图片。处理流程如下:使用 FileReader 读取图片;创建临时图片对象;按最大宽度缩小图片;通过 Canvas 重新绘制;转换为压缩后的 JPEG 数据;将压缩结果保存到浏览器。Canvas 在此处相当于临时画布:程序先将原图绘制到画布,再输出尺寸更小、质量可控的新图片。3.3.4 实现分类管理系统默认分类包括:荤菜;素菜;汤品;主食;凉菜。管理员可以新增分类、重命名分类,并删除未被菜品使用的分类。如果某个分类下仍有菜品,系统应阻止删除,避免出现菜品存在但分类缺失的数据异常。3.3.5 实现评价管理和删除日志管理员可以统一查看顾客评价,并按状态和标签筛选。支持以下操作:查看评价详情;隐藏或恢复评价;修改处理状态;填写处理人和处理说明;回复顾客;永久删除评价;记录删除原因。删除评价时,建议保存以下信息:删除时间;删除原因;被删除评价的内容快照;执行删除操作的人员。通过删除日志,可以在出现问题时追踪操作过程。3.4 增加数据统计和 CSV 导出管理员通常不需要逐条浏览所有评价,而是需要快速判断:哪些菜品评分较低;最近差评是否增多;顾客主要反馈哪些问题;哪个食堂或窗口问题较多;评价是否得到及时处理;各星级评价分别有多少。因此,系统增加以下统计内容:菜品平均评分排行;不同星级的评价分布;最近评价趋势;高频问题标签;食堂和窗口问题分布;不同评价维度的平均分;低评分提醒;超时未处理评价提醒;今日、最近 7 天、最近 30 天和自定义日期统计;CSV 数据导出。项目未引入额外图表库,而是通过 HTML、CSS 和 SVG 绘制简单图表。例如,横向柱状图可以使用一个背景容器和一个动态宽度元素实现:<div class="bar-track"> <div class="bar-fill" :style="{ width: percentage + '%' }"> </div> </div> 3.5 使用 localStorage 保存数据如果数据仅保存在 JavaScript 变量中,刷新网页后新增菜品和评价会消失。项目使用浏览器 localStorage 保存数据。核心方法如下:function safeSetStorage(key, value) { localStorage.setItem(key, JSON.stringify(value)); } function safeGetStorage(key, fallback) { const value = localStorage.getItem(key); if (value === null) { return fallback; } return JSON.parse(value); } localStorage 只能保存字符串,因此保存数组和对象前,需要使用 JSON.stringify 转换为字符串;读取时再使用 JSON.parse 还原。项目分别保存以下数据:canteen_dishes canteen_reviews canteen_categories canteen_current_user canteen_data_version canteen_deletion_logs建议在读写数据时增加异常处理。当浏览器存储空间不足或数据格式损坏时,页面应显示提示,并尽量使用默认数据继续运行。3.5.1 localStorage 使用限制localStorage 中的数据保存在访问者自己的浏览器中,因此存在以下限制:一台电脑中添加的数据,其他电脑不一定能看到;更换浏览器后,数据不会自动同步;清理浏览器缓存后,数据可能丢失;管理员操作不会自动同步给所有用户;适合演示、原型和单机使用,不适合正式多人系统。正式用于学校食堂时,需要增加:后端 API;数据库;用户登录;管理员身份认证;服务器端权限控制。3.6 本地运行和功能验证保存 index.html 后,可以直接使用浏览器打开文件进行验证,也可以使用本地静态服务器运行。建议按以下顺序进行检查:顾客端是否能够正常展示菜品;搜索、筛选和排序是否生效;菜品详情弹窗是否能够打开和关闭;评价表单验证是否完整;新增评价后,“我的评价”是否显示;管理端能否新增、编辑和删除菜品;评价状态、回复、隐藏和删除日志是否正常;数据统计是否随数据变化更新;刷新页面后数据是否仍然存在;手机和电脑页面是否均能正常使用。3.7 部署项目至华为云 ECS3.7.1 购买弹性云服务器 ECS登录华为云控制台,搜索“弹性云服务器 ECS”,购买一台 Ubuntu 云服务器。本案例为静态网页,对 CPU 和内存要求较低,可根据体验时长和预算选择基础配置。购买完成后,记录公网 IP、登录用户和密码或密钥。3.7.2 配置安全组进入 ECS 的安全组配置页面,检查入方向规则。至少开放:22:SSH 登录 80:HTTP 访问如后续配置 HTTPS,再开放:443:HTTPS 访问如果 Nginx 已启动但浏览器无法访问,首先检查安全组是否放行 80 端口。3.7.3 使用 SSH 登录服务器在本地终端执行:ssh root@服务器公网IP如果服务器使用其他用户名,可执行:ssh ubuntu@服务器公网IP首次连接时,终端会询问是否信任服务器指纹,输入:yes然后输入密码或使用私钥完成登录。3.7.4 安装并启动 Nginx执行以下命令:sudo apt update sudo apt install nginx -y 启动 Nginx,并设置开机自动启动:sudo systemctl start nginx sudo systemctl enable nginx在浏览器中访问:http://服务器公网IP如果看到 Nginx 欢迎页面,说明 ECS、安全组和 Nginx 已正常工作。3.7.5 上传 index.htmlUbuntu 中 Nginx 常见的网页根目录为:/var/www/html/在本地电脑执行:scp index.html root@服务器公网IP:/var/www/html/index.html也可以先上传到用户目录,再登录服务器执行:sudo cp index.html /var/www/html/index.html检查文件是否存在:ls -lh /var/www/html/确认目录中存在:index.html重新访问:http://服务器公网IP此时应显示食堂菜品评价管理系统,而不是 Nginx 默认欢迎页面。3.7.6 检查 Nginx 配置如果访问公网 IP 后未自动打开 index.html,可检查 Nginx 默认站点配置:sudo nano /etc/nginx/sites-available/default核心配置可保持为:server { listen 80; listen [::]:80; server_name _; root /var/www/html; index index.html; location / { try_files $uri $uri/ =404; } } 修改完成后,先检查语法:sudo nginx -t 确认配置正常后,重新加载 Nginx:sudo systemctl reload nginx3.7.7 OBS 访问 HTML 时直接下载的说明本项目只有一个 index.html,理论上也可以使用 OBS 静态网站托管。但在部分场景中,使用 OBS 默认域名访问 HTML 对象时,响应头可能包含:Content-Disposition: attachment浏览器会将 HTML 当作附件下载,而不是直接渲染页面。使用自定义域名通常可以调整访问方式,但还需要配置 DNS,并可能涉及备案和 HTTPS。为了简化体验流程并保留后续扩展能力,本案例选择 ECS 和 Nginx 部署。3.7.8 配置域名和 HTTPS(可选)如需长期对外使用,可继续完成:购买域名;将域名解析到 ECS 公网 IP;在 Nginx 中配置域名;申请 HTTPS 证书;开放 443 端口。使用 Certbot 配置 HTTPS 时,可参考以下命令:sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d 你的域名.com域名解析、备案和证书配置不属于本案例的必做范围。3.8 运行结果与注意事项完成以上步骤后,系统应具备以下能力:顾客浏览、搜索、筛选和评价菜品;顾客查看和修改自己的评价;管理员维护菜品、分类和评价;管理员查看统计信息并导出 CSV;数据在当前浏览器中持久保存;网页通过 ECS 公网 IP 在线访问。需要注意,单文件部署不等于完全离线。原项目仍通过网络加载 Vue 3 CDN 和 Google Fonts。如果外部 CDN 网络不稳定,页面可能加载失败或字体显示异常。后续可进行以下优化:将 Vue 生产版文件保存到 ECS 本地;删除 Google Fonts;使用系统自带中文字体;将依赖文件与 index.html 一起部署;增加后端、数据库、登录和权限控制;将浏览器本地数据迁移到服务器数据库。四、释放资源体验完成后,如不再使用 ECS,请及时释放相关资源,避免继续计费。4.1 备份必要文件删除 ECS 前,请先备份:index.html;Nginx 自定义配置;需要保留的域名和证书信息;浏览器中需要导出的 CSV 数据。由于业务数据保存在访问者浏览器的 localStorage 中,删除 ECS 不会自动导出这些数据。清理浏览器缓存前,请先通过系统提供的导出功能保存必要数据。4.2 删除 ECS 弹性云服务器进入 ECS 列表,选择本案例创建的云服务器,点击“更多 > 删除”。在确认对话框中,根据实际情况选择:释放云服务器绑定的弹性公网 IP;删除云服务器挂载的数据盘。确认无误后执行删除。4.3 检查其他计费资源请继续检查以下资源是否仍在计费:弹性公网 IP;数据盘;快照;域名;证书或其他增值服务。五、扩展资料说明华为开发者空间:cid:link_0华为云弹性公网 IP:cid:link_15.1 项目适用边界当前项目适合:前端学习;课堂作业;功能原型;单机演示;AI 辅助编程实践。当前项目不适合直接用于正式生产环境,主要原因如下:没有独立后端;没有数据库;没有真正的登录和权限认证;多设备之间无法同步数据;浏览器缓存清理后,本地数据可能丢失;外部 CDN 依赖可能影响页面稳定性。5.2 后续可扩展方向可以在当前原型基础上继续增加:Spring Boot、Node.js 或其他后端服务;MySQL、PostgreSQL 等数据库;用户登录和角色权限;图片对象存储;消息通知;数据审核;多食堂、多校区管理;域名、HTTPS 和日志监控;移动端小程序或 App。5.3 案例总结本案例通过一个 index.html、华为云码道(CodeArts)AI IDE 和一台华为云 ECS,完成了一个可浏览、可评价、可管理、可统计并可在线访问的食堂菜品评价管理系统原型。对于前端初学者而言,最有效的学习方式之一,是先完成一个真实项目,再围绕项目中遇到的问题逐步学习输入框、表单验证、localStorage、服务器、Nginx、后端和数据库。华为云码道在本案例中的价值不仅是生成代码,更重要的是帮助开发者理解代码、定位问题并持续迭代。5.4 在线 Demo 演示项目已经部署到华为云 ECS,可通过公网访问。网页演示链接已补充到本节评论区。使用说明:当前项目为前端演示版本,数据保存在访问者自己的浏览器中。不同设备、不同浏览器之间的数据不会同步,清除浏览器缓存后数据可能丢失。
  • [常见问题汇总帖] deveco.cmd更新完了过后,无法登录使用
    各位大佬,deveco.cmd更新完了过后,无法登录使用,一直卡在反复要求实名认证,但是我早已经完成实名认证了,更换Firefox、Chrome都不行,deveco卸载重新安装也一样卡在这个位置,  
  • [案例共创] 【案例共创】【第12期】基于华为云AI Shell完成云服务器远程调用本地大模型
    一、概述1.1 案例介绍本案例主要介绍AI Shell的基础使用,轻松实现云服务器管理于交互,以及大模型调用。1.2 适用对象企业开发者个人开发者高校学生1.3 案例时间本案例总时长预计45分钟。1.4 案例流程1. 购买弹性云服务器,创建虚拟私有云及安全组或者使用以及有的云服务器;2. 登录华为云打开AI shell,连接到云服务器;3. 通过ai shell给云服务器安装openclaw,frp内网穿透工具并配置4. 本地电脑(linux或者windows)安装ollama部署qwen2.5:3b等大模型并配置frp客户端5. 内网穿透以及openclaw成功调用本地大模型建部署流水线。1.5 资源总览本案例预计花费4.75元。体验完成后请及时释放资源,避免产生多余的费用。资源名称规格单价(元)ai shell免费版免费云容器X86计算,通用计算增强型 | c7.large.2 | 2 vCPUs | 4 GiB CentOS 7.6 64bit (40GB)0.6EIP按流量计费 5Mbit/s0.8元/GB二、环境和资源准备2.1购买弹性云服务器或者使用已有的弹性云服务器(linux版为例)登录华为开发者空间,参考案例《弹性云服务器ECS:轻松上云第一步_在线课程_华为云开发者学堂_云计算培训-华为云》中的“第3章 弹性云服务器购买和使用入门2.2 ollama本地部署大模型登录华为开发者空间,参考案例《大模型之 Ollama 入门教程-云社区-华为云》部署ollama三、构建应用3.1 通过ai shell为云服务器部署openclaw登录开发者空间,点击菜单 开发平台 >ai shellai shell介绍工具操作• 文件读写、目录管理、代码编辑 • 执行 Shell 命令 • 管理工作区和项目文件☁️ 华为云技能 当前已安装丰富的华为云技能,可以帮你:• 计算资源:ECS、BMS、CCI(容器实例)、弹性伸缩 • 存储资源:OBS 对象存储、EVS 云硬盘、SFS 文件系统 • 网络资源:VPC、子网、安全组、ELB 负载均衡、NAT、VPN、DNS • 数据库:RDS 等数据库服务 • 身份与安全:IAM 用户/策略/权限查询 • 监控告警:CES 云监控、告警规则 • 计费管理:账单、余额、优惠券、成本分析 • 基础设施即代码:Terraform 配置生成与部署 • 无服务器:FunctionGraph 函数创建与触发器配置 • 代码生成:通过 CodeArts 生成代码🧠 智能特性• 任务规划与分步执行 • 长期记忆(保存偏好、规则、项目信息) • 技能市场(可搜索和安装更多技能)对话ai shell询问内存和系统类型,内存7.2G,欧拉系统对话帮我连接到云服务器,弹性公网ip为xxx用户名root,密码xxx云服务器没有买可以按需计费,参照登录华为开发者空间,参考案例《弹性云服务器ECS:轻松上云第一步_在线课程_华为云开发者学堂_云计算培训-华为云》中的“第3章 弹性云服务器购买和使用入门公网Ip查看点击回车确定帮我执行curl -fsSL https://openclaw.ai/install.sh | bash如图,ai shell已经成功安装openclaw,我之前已经安装成功,所以升级到了最新版本7.13.2部署ollama本地ollama安装,以windows为例ollama官网下载安装包之所以推荐使用命令安装,是因为通过命令安装可以修改默认的安装目录位置,而通过鼠标双击安装,默认会安装到C盘。打开下载文件位置输入cmd进入安装包目录E:\edge>OllamaSetup.exe /DIR="E:\software\ollama"E:\software\ollama为期待安装位置,可以自定义位置,前提是该目录存在,可新建或者选择已有路径配置环境变量:在用户环境变量中,我们点击新建,分别新建下面两组变量,如下所示: OLLAMA_HOST 0.0.0.0 --任何IP都可以访问OLLAMA_ORIGINS *允许任意源访问。使用setx OLLAMA_ORIGINS "*"或者在命令行编辑直接 打开CMD,输入ollama -v命令 ollama run qwen2.5:3b如果模型没下载会下载并启动模型deepseek本地大模型调用调用时候ollama run 模型名称命令运行即可上述下载命令需要在新打开的CMD窗口中执行或者使用pull命令 ollama list命令查看已安装了的模型,如下图所示:3.3 安装frp内网穿透工具openclaw已经安装,配置使用本地大模型,即windows上部署的qwen2.5:3b大模型,由于大模型部署在本地,需要配置内网穿透,以便公网的openclaw访问本地大模型。Windows下载frp,C:\Users\30241>ollama serveError: listen tcp 0.0.0.0:11434: bind: Only one usage of each socket address (protocol/network address/port) is normally permitted.cid:link_2点击右面Release选择最新版,windows选择,设置=关于-根据系统类型选择,64位选择amd64Linux的选择这个,复制连接 Ai shell对话帮我下载cid:link_2/releases/download/v0.70.0/frp_0.70.0_linux_amd64.tar.gz服务器端,一般云端,这里服务端为linux服务器,编辑配置,frps.toml文件放行7000,11434,7500端口;云服务器编辑安全组即可,7000,7500是frp的客户端和服务端端口,11434是ollama端口Ai shell对话帮我解压配置认证token为Fjw12345678.Webserver0.0.0.0,服务器端口7500,服务器用户user,服务器用户密码Fjw12345678.配置完成,访问公网ip:7500即可./frps -c frps.toml 配置客户端frpc.toml文件第一行为公网LINUX服务器IP本地大模型启用GPU加速,运行更快。检查GPUnvidia-smi$env:OLLAMA_GPU="true"$env:OLLAMA_GPU_LAYERS="35"$env:OLLAMA_HOST="0.0.0.0:11434 Ollama serve开启Ollama服务Windows启动frpc客户端.\frpc.exe -c frpc.toml  成功 本地访问公网ip:11434查看ollama服务,显示如下证明运行成功 3.4配置接入本地大模型deepseekr1-1.5b不能接入openclaw云服务器openclaw配置qwen2.5:3bAi shell输入openclaw configopenclaw帮我配置模型qwen2.5:3b,api base url127.0.0.1:11434/v1,key为空,重启oepnclaw,然后执行openclaw chatUrl为127.0.0.1:11434/v1Openclaw chat 执行命令行聊天运行成功 公网IP:7500查看代理流量   四、释放资源4.1删除ECS弹性云服务如果临时购买不打算使用云服务器及时删除。进入ECS列表,点击全选按钮,点击“更多 -> 删除”。在对话框中选择“释放云服务器绑定的公网IP地址”和“删除云服务器挂载的数据盘”,点击“是”。 参加  
  • [问题求助] OIAP流程如何实现定时及取消排队功能
    【问题来源】星网【问题简要】如何在OIAP流程中实现定时及取消排队功能【问题类别】OIAP  IVR流程开发【AICC解决方案版本】 25.300【期望解决时间】尽快【问题现象描述】     需求是这样的:     按技能队列转人工,     如果坐席全忙,先播放20秒音乐(播放过程中如果有坐席空闲,可立即接起客户),     然后播报‘坐席忙,继续等待按1’,         如果客户按1,则继续播放20秒音乐,如此循环;         如果客户按其他按键,播报结束话术后挂断电话。       我用oiap做了一个排队流程,技能队列排队等待这里选定该流程。按1播放20秒等待音乐;按其他按键,播报结束话术后结束。    问题:     1.播放20秒的音乐---这个20秒如何实现,oiap流程有定时功能吗?还是搞一个时长刚好是20秒的音乐语音文件?     2.测试发现按其他按键时无法取消排队(如果坐席空闲,又将该客户接起来了)。SCE流程可以在呼叫释放时选择用户取消排队,请问odfs流程如何取消排队?     【日志或错误截图】
  • [热门活动] 【盖楼贴】OPC优秀创意案例 · 征集活动第1期
    已报名OPC优秀创意案例征集活动的用户,请在本帖下“盖楼”回复案例或作品,谢谢~
总条数:1991 到第
上滑加载中