FastAdmin的API接口生成器插件,使用validate验证时报错等问题。
|
1、当使用生成接口 生成全局模型时, 生成的validate文件的namespace错误
应为 - namespace app\common\validate;<br>实际为
复制代码- namespace app\api\validate;<br><br>解决方法:<br>1、找到
复制代码- application/admin/library/buiapi/stubs/validate.stub 文件<br>命名空间修改为
复制代码- namespace app\{%module_name%}\validate;
复制代码- <br>application/admin/library/buiapi/BuiApiTemp.php 文件<br>通过 54行左右
复制代码- if (empty($key) && strpos($temp, "local=0") !== false) {<br> self::$data['model_path'] = 'common';<br>}<br>判断是否启用了全局模型
复制代码- //替换模版内容<br>self::$data['module_name'] = 'api';<br>if (self::$data['model_path'] == 'common'){<br> self::$data['module_name'] = 'common';<br>}<br>foreach (self::$data as $key_data => $val_data) {<br> $index = str_replace("{%" . $key_data . "%}", $val_data, $index);<br> $model = str_replace("{%" . $key_data . "%}", $val_data, $model);<br> $validate = str_replace("{%" . $key_data . "%}", $val_data, $validate);<br> if ($key_data != 'controller_index') {<br> $controller = str_replace("{%" . $key_data . "%}", $val_data, $controller);<br> }<br>}
复制代码- 红色为加入的代码<br><br>结果:<br>生成的validate文件就在api或者common(在生成api接口时勾选了 - 全局模型类)命名空间下了。<br><br><br>2、在application/admin/library/buiapi/BuiApiTemp.php 文件的84行左右
复制代码- $controller_path_msg 和 $validate_path_msg 反了,换一下位置即可。
复制代码 来源:https://www.cnblogs.com/arvin-an/p/17213377.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|
|
|
发表于 2023-3-14 03:22:57
举报
回复
分享
|
|
|
|