fastadmin后台中文章分类ID改为名称显示

本文介绍如何在FastAdmin后台将文章分类ID转换为对应的分类名称进行显示。通过覆盖控制器的index方法并利用TypeModel获取分类名称,再通过前端JS调整显示方式。

fastadmin后台中文章分类ID改为名称显示

首先找到你当前的文章类后台控制器
一般在application/admin/controller 下面

先添加模型use app\admin\model\Type as TypeModel;

然后覆盖index方法

 public function index()
    {
        //设置过滤方法
        $this->request->filter(['strip_tags']);
        if ($this->request->isAjax())
        {

            //如果发送的来源是Selectpage,则转发到Selectpage
            if ($this->request->request('keyField'))
            {
                return $this->select

### 修改 FastAdmin 后台验证逻辑或配置自定义验证规则 在 FastAdmin 中,表单验证是一个非常重要的功能,默认情况下它会通过内置的方式完成数据校验。如果需要修改默认的验证逻辑或者增加自定义验证规则,则可以通过调整控制器中的方法以及扩展验证器来实现。 #### 自定义验证规则的方法 FastAdmin 使用 ThinkPHP 的验证机制来进行数据校验。以下是具体操作: 1. **创建自定义验证类** 可以在 `application/admin/validate` 目录下新建一个验证文件,例如命名为 `CustomValidate.php`。在这个文件中可以定义自己的验证规则和错误提示信息[^2]。 ```php namespace app\admin\validate; use think\Validate; class CustomValidate extends Validate { protected $rule = [ 'username' => 'require|min:3|max:20|alphaDash', 'email' => 'require|email|unique:user,email', 'password' => 'confirm' ]; protected $message = [ 'username.require' => '用户名不能为空', 'username.min' => '用户名长度不能小于3位', 'email.email' => '邮箱格式不正确', 'password.confirm' => '两次密码输入不一致' ]; } ``` 2. **调用自定义验证类** 在对应的控制器中引入并使用该验证类。通常是在 `edit`, `add` 方法或者其他处理表单提交的地方加入验证逻辑[^3]。 ```php public function add() { if ($this->request->isPost()) { $params = $this->request->post("row/a"); // 实例化自定义验证器 $validate = new \app\admin\validate\CustomValidate(); // 进行验证 if (!$validate->check($params)) { $this->error(__("Validation failed") . ': ' . implode(';', $validate->getError())); } // 如果验证成功则继续执行保存或其他业务逻辑... } return $this->fetch(); } ``` 3. **动态绑定事件与初始化表单** 当页面加载时,FastAdmin 默认会对表单元素自动绑定一些行为(如上传、富文本编辑器等)。这些行为可能会影响某些字段的初始状态或触发条件。为了确保新添加的验证规则生效,可以在前端 HTML 文件中适当位置手动设置属性或重新绑定事件[^5]。 假设有一个新增加的必填项 `business_code`,那么它的原始结构可能是这样的: ```html <input id="c-businesscode" class="form-control" name="row[business_code]" type="text"> ``` 要求此字段必须填写且仅允许字母数字组合形式的内容,则需补充正则表达式的匹配模式作为附加约束条件。 4. **覆盖默认的行为脚本** 若希望进一步定制交互体验,比如实时反馈用户的输入是否满足特定标准,则可通过 JavaScript 扩展原有功能[^4]。下面展示了一个简单的例子用于演示如何增强用户体验的同时保持一致性。 ```javascript $(document).ready(function () { $('#c-businesscode').on('blur', function () { var value = $.trim($(this).val()); if (!value.match(/^[a-zA-Z0-9]+$/)) { alert('Business Code should only contain letters and numbers.'); $(this).focus(); // 将光标移回至当前控件以便修正错误 } else { console.log('Input is valid!'); } }); }); ``` #### 总结 通过对上述几个方面的调整即可灵活改变 FastAdmin 的后台验证流程,并支持更加复杂的场景需求。无论是服务器端还是客户端层面都提供了足够的自由度供开发者按需设计适合项目特点的安全防护措施。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值