登录
首页 >  数据库 >  MySQL

解决laravel-admin中select在form编辑时不能自动选中当前的值的问题

来源:SegmentFault

时间:2023-02-25 10:30:43 351浏览 收藏

积累知识,胜过积蓄金银!毕竟在##column_title##开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《解决laravel-admin中select在form编辑时不能自动选中当前的值的问题》,就带大家讲解一下MySQL、PHP、laravel知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

为每一个Model中创建一个能够自动生成select的option的方法就可以了。

例如为User.php这个model创建生成option的方法

    /**
     * 获取用户列表-select-option
     * @return User[]|\Illuminate\Database\Eloquent\Collection
     */
    public static function getSelectOptions()
    {
        $options = DB::table('users')->select('id','name as text')->get();
        $selectOption = [];
        foreach ($options as $option){
            $selectOption[$option->id] = $option->text;
        }
        return $selectOption;
    }

在对应的控制器中使用比如Article的控制器中

    protected function form()
    {
        return Admin::form(Article::class, function (Form $form) {

            $form->display('id', 'ID');

            $form->text('title','标题')->rules('required|min:10');
            $form->textarea('description','摘要简介');
            $form->ueditor('body','正文')->rules('min:10');
            $form->select('user_id','作者')->options(User::getSelectOptions());
            (略)

文档中说的使用接口方式,而且返回文档中的格式,是不能解决自动选中原值的,只能是空白的。
$form->select('user_id','作者')->options(admin_base_path('/api/users'));

本篇关于《解决laravel-admin中select在form编辑时不能自动选中当前的值的问题》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表