dcat admin 如何设置表单更新不能编辑

表单提交情况

1.新增,email字段可以输入
2.修改: 如果email字段为空,则可以输入,如果email字段不为空,则不能编辑修改

请问这种情况该怎样做呢,内置有相应的方法吗?

            $form->creating(function (Form $form) {
                $form->text('email');
            });
            $form->editing(function (Form $form) {
                if($this->email){
                    $form->text('email')->value($this->email)->readOnly();
                }else{
                    $form->text('email')->value($this->email);
                }

            });

我用了这个方法,页面操作的没有问题的,但是提交数据时,email 就没有成功提交

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 6

设置行操作按钮 (actions)
思路无非就是页面渲染的时候,判断这一行的email为不为空,不为空就不显示编辑按钮,为空就显示编辑按钮,而不是在form里去判断。

9个月前 评论
lddtime 9个月前
她来听我的演唱会 (作者) 9个月前

写js判断吧,name = 字段名

9个月前 评论

提交时候 你是编辑状态下email是否有值,有值重新赋值保存

9个月前 评论
Mutoulee
if ($form->isEditing() && $form->model()->email) {
    $form->text('email')->disable();
} else {
    $form->text('email')->required();
}
9个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!