>PHP 프레임워크 >Laravel >laravel-admin 선택 연결 문제를 해결하는 방법

laravel-admin 선택 연결 문제를 해결하는 방법

藏色散人
藏色散人앞으로
2021-07-21 15:01:013115검색

laravel-admin 프로젝트에서 충족해야 할 요구 사항이 있습니다:

select 옵션을 선택한 후 select2 및 select3 옵션에 동시에 할당해야 합니다.选择一个select选项后,需要同时联动赋值给select2,select3选项

laravel-admin select联动问题

有了解到laravel-admin本身带有 ->loads() 方法,所以尝试使用了,如下:

$form->select('goods', __('商品名称'))->options(function(){
            $list = [];
            $goods = Good::where('state',1)->get();
            foreach ($goods as $k => $v) {
                $list[$v['id']] = $v['name'];
            }
            return $list;
        })->loads(['supplier_goods','purchaser_good'],['/api/getsuppliergoods','/api/getpurchasergoods']);
$form->multipleSelect('supplier_goods', __('供应商商品'));
$form->multipleSelect('purchaser_good', __('采购商商品'));

实际运行后,发现 supplier_goods 可以正常选择,但是 purchaser_good 选项框可以正常显示内容,但是无法选中内容,也没有发现报错。【推荐:laravel教程

将 multipleSelect 改为 select :$form->select('purchaser_good', __('采购商商品')); 再次运行,发现还是无法选择,并且在点击时会报如下错误:
laravel-admin select联动问题

经过一番查看,终于发现问题,原来是 '/api/getpurchasergoods' 对应的控制器里方法写的有问题。

官方的统一写法是 ->get(['id', DB::raw('purchaser_id as text')])->toarray();

但是这里由于我最初是想直接获取采购商id的,所以就改成:->get(['purchaser_id', DB::raw('purchaser_id as text')])->toarray();

laravel-admin 선택 연결 문제

laravel-admin 자체가 ->loads() 메소드를 사용하기 때문에 다음과 같이 사용해 보았습니다.
rrreee실제 실행 후,supply_goods는 정상적으로 선택이 되지만, buyr_good 옵션 박스에서는 내용이 표시되는 것을 확인했습니다. 정상적으로 되었지만, 내용을 선택할 수 없으며, 오류도 보고되지 않았습니다. [권장: laravel 튜토리얼]
🎜 multipleSelect를 선택하도록 변경: $form->select('purchaser_good', __('Purchaser Goods')); 다시 실행해 보면 여전히 선택할 수 없으며, 클릭하면 다음 오류가 보고됩니다:
🎜🎜몇 가지 검사를 거쳐 마침내 문제를 발견한 결과, '/api/getpurchasergoods'의 해당 컨트롤러의 메소드에 문제가 있는 것으로 나타났습니다. 🎜🎜공식적인 통합 작성 방법은 ->get(['id', DB::raw('purchaser_id as text')])->toarray();🎜🎜하지만 여기서는 왜냐하면 처음에는 구매자 ID를 직접 얻고 싶어서 ->get(['purchaser_id', DB::raw('purchaser_id as text')])->toarray(로 변경했습니다. ); code>🎜🎜이로 인해 프레임워크가 해당 ID를 찾지 못해 추가 선택 작업을 수행할 수 없게 될 수 있습니다. 🎜🎜관련 추천: 🎜최신 5개의 Laravel 비디오 튜토리얼🎜🎜

위 내용은 laravel-admin 선택 연결 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제