ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
在需要附件服务的表单中可以选用托管的方式进行使用: 首先创建自己的附件管理控制器(controller),然后此控制器类之内第一句加上此代码:`use \framework\core\service\udm\TraitUploadController;`加入预支的附件服务特性,这样,控制器就获得了3个访问方法:attachmentUpload(附件上传),attachmentDownload(附件下载),attachmentDelete(附件删除),之后根据自己的需要,将这些方法映射至路由。 如果需要对操作或者失败之后进行其他操作,可重载事件方法:`onUploaded(array $files)`,`onUploadError()`; 最后在表单中放置一个wd-upload组件,然后设置相关属性(api、delete-api、preview-url等)即可完成附件上传的托管。该组件会返回上传附件的托管标识号,开发者需要对该标识号进行管理,以关联到附件。 > 注:资源获取、附件获取等操作可通过api:UnstructuredDataService获取。 TraitUploadController的所有方法清单包括如下: > 附件上传。 > public function attachmentUpload(bool $public = false, string $owner = "", array $tags = \[\]) > 附件下载。 > public function attachmentDownload($id) > 附件删除。 > public function attachmentDelete($id) > 给附件打标。 > public function setTags(array $data) > 给附件设置排序。 > public function attachmentOrder(array $orderdata) > 设置资源是否公开。 > public function attachmentPublic($openid, $public = true) > 将资源放入回收站中。 > public function attachmentDiscard($openid) > 将资源从回收站中恢复成正常状态。 > public function attachmentRestore($openid)