laravel-admin对表单的radio属性无法进行rule(‘required‘)验证

司寇祺
2023-12-01

业务场景:使用laravel-admin的时候需要对radio进行非空验证
使用方式

//第一种方式
$form->radio('field','字段')->option([0=>'字段1',1=>'字段2'])->rules('required');
//第二种方式
$form->radio('field','字段')->option([0=>'字段1',1=>'字段2'])->required();
//第三种方式
$form->RadioButton('field','字段')->option([0=>'字段1',1=>'字段2'])->rules('required');
//第四种方式
$form->RadioCard('field','字段')->option([0=>'字段1',1=>'字段2'])->rules('required');

以上四种方式都无法实现业务需求
最终选择的折中方案如下

  1. 设置默认值以保证单选项永远不会为空
$form->radio('field','字段')->option([0=>'字段1',1=>'字段2'])->default(0)->rules('required');
  1. 将radio改为select
$form->select('field','字段')->option([' '=>'请选择字段',0=>'字段1',1=>'字段2'])->rules('required');

如有更好的解决方式也可以留言交流

 类似资料: