You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Backpack:添加账户设置页字段时找不到控制器与视图求助

Laravel Backpack 自定义账户设置页面字段解决方案
  • 默认情况下,MyAccountController 和账户设置视图文件并不在你的项目 app/Http/Controllers 目录中,而是存放在 Backpack 包的内部路径:

    • 控制器路径:vendor/backpack/crud/src/app/Http/Controllers/Auth/MyAccountController.php
    • 视图路径:vendor/backpack/crud/src/resources/views/auth/my_account.blade.php
  • 不要直接修改 vendor 目录下的文件(更新包时会被覆盖),正确的做法是将这些文件发布到你的项目中进行自定义:

    • 发布控制器到项目:

      php artisan backpack:publish crud::controllers.auth.MyAccountController
      

      执行后,控制器会出现在 app/Http/Controllers/Backpack/Auth/MyAccountController.php

    • 发布视图到项目:

      php artisan backpack:publish crud::views.auth.my_account
      

      执行后,视图会出现在 resources/views/vendor/backpack/auth/my_account.blade.php

  • 添加自定义字段的步骤:

    1. 打开发布后的 MyAccountController.php,找到 setupMyAccountFields 方法
    2. 在 addFields 数组中追加你需要的字段,示例:
    protected function setupMyAccountFields()
    {
        $this->crud->addFields([
            [
                'name' => 'name',
                'label' => trans('backpack::base.name'),
                'type' => 'text',
            ],
            [
                'name' => 'email',
                'label' => trans('backpack::base.email'),
                'type' => 'email',
            ],
            // 自定义字段示例
            [
                'name' => 'phone',
                'label' => '手机号',
                'type' => 'text',
                'validationRules' => 'nullable|string|max:20',
            ],
        ]);
    }
    
    1. 如果需要调整页面布局或样式,直接编辑发布后的 my_account.blade.php 即可。

内容的提问来源于stack exchange,提问作者Elvys Wong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 00:30:01