美文网首页
2020-12-24 laravel-admin 学习②

2020-12-24 laravel-admin 学习②

作者: 浩克啊12138 | 来源:发表于2020-12-24 18:13 被阅读0次

    界面语言

    • 如果界面显示的是英文板块可以选择在config/app.php文件中进行修改
      找到'locale' => 'en' 将其修改成 'locale' => 'zh-CN',

    • 如果有多语言需求开发 可以在./resource/lang中找到对应的语言去添加翻译

    以下为中文翻译文件举例

    [
        'prev'                   => '上一步',
        'next'                   => '下一步',
        'quick_create'           => '快速创建',
    ]
    

    导出

    在导出的时候如果遇到乱码了,找到./vendor/encore/laravel-admin/src/Grid/Exporters/CsvExporter.phpgetHeaders方法

        protected function getHeaders()
        {
            if (!$this->filename) {
                $this->filename = $this->getTable();
            }
    
            // 添加下面这行print语句就可以解决问题了
            print(chr(0xEF).chr(0xBB).chr(0xBF));
    
            return [
                'Content-Encoding'    => 'UTF-8',
                'Content-Type'        => 'text/csv;charset=UTF-8',
                'Content-Disposition' => "attachment;filename=\"{$this->filename}.csv\"",
            ];
        }
    




    以下是为昨天创建的资源控制器的具体落实

    • grid方法

      1. 添加字段
        /**
         * 成员列表总览页面
         *
         * @return Grid
         */
        protected function grid()
        {
            $grid = new Grid(new Member());
    
            // 方法1: 将需要展示字段通过column方法显示出来
            $grid->column('id', 'Id');
            $grid->column('nickname', '昵称');
            $grid->column('truename', '姓名');
            $grid->column('email', '邮箱');
    
            // 方法2: 直接将字段名作为方法也可以显示出来, 由于可能会和Grid的方法冲突
            //       此方法不建议使用
            $grid->truename('姓名');
    
            // 方法3: 通过columns方法将多个字段显示出来
            //       有多个不为数组的参数时展示的表格标题为首字母大写的字段名
            $grid->columns(['nickname' => '昵称', 'truename' => '姓名']);
            $grid->columns('nickname', 'truename');
    
            // 显示id列, 并且设置该字段为可排序字段
            $grid->column('id', 'Id')->sortable();
    
            return $grid;
        }
    
    • detail方法

        /**
         * 显示成员的详细信息
         *
         * @param mixed $id
         * @return Show
         */
        protected function detail($id)
        {
            $show = new Show(Member::findOrFail($id));
    
            $show->field('id', 'Id');
            $show->field('nickname', '昵称');
            $show->field('truename', '姓名');
            $show->field('email','邮箱');
    
            return $show;
        }
    
    • from方法

        /**
         * 制作一个表单生成器, 用于表单提交, 如创建、修改等
         *
         * @return Form
         */
        protected function form()
        {
            $form = new Form(new Member());
    
            $form->display('id', 'Id');
            // 添加一个只是可见的字段
            $form->text('nickname', '昵称');
            // 添加文本框
            $form->text('truename', '姓名');
            $form->text('email', '邮箱');
            // 添加文本域
            $form->textarea('info', '自我介绍');
            // 还有其他的表单控件都可以直接以方法名的形式去使用
    
            // 左上角的按钮控件如果不需要可以用以下方法去掉
            $show->panel()->tools(function ($tools) {
                // 去掉修改按钮
                $tools->disableEdit();
                // 去掉列表按钮
                $tools->disableList();
                // 去掉删除按钮
                $tools->disableDelete();
            });
    
            return $form;
        }
    

    相关文章

      网友评论

          本文标题:2020-12-24 laravel-admin 学习②

          本文链接:https://www.haomeiwen.com/subject/hznpnktx.html