{"id":17246214,"url":"https://github.com/hanson/laravel-admin-register","last_synced_at":"2025-07-23T14:34:14.563Z","repository":{"id":62514482,"uuid":"210257725","full_name":"Hanson/laravel-admin-register","owner":"Hanson","description":"laravel-admin 短信注册扩展（支持多个短信服务商）","archived":false,"fork":false,"pushed_at":"2020-02-29T14:59:34.000Z","size":28,"stargazers_count":21,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-14T04:13:46.884Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hanson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-09-23T03:33:28.000Z","updated_at":"2024-05-05T00:47:26.000Z","dependencies_parsed_at":"2022-11-02T13:30:36.191Z","dependency_job_id":null,"html_url":"https://github.com/Hanson/laravel-admin-register","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Hanson/laravel-admin-register","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanson%2Flaravel-admin-register","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanson%2Flaravel-admin-register/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanson%2Flaravel-admin-register/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanson%2Flaravel-admin-register/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hanson","download_url":"https://codeload.github.com/Hanson/laravel-admin-register/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hanson%2Flaravel-admin-register/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266694573,"owners_count":23969795,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T06:32:48.538Z","updated_at":"2025-07-23T14:34:14.531Z","avatar_url":"https://github.com/Hanson.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"laravel-admin extension\n======\n\nlaravel-admin 短信注册扩展\n\n# 安装\n\n安装依赖\n```\ncomposer require hanson/laravel-admin-register:dev-master\n```\n\n# 配置\n\n## 发布资源\n```\nphp artisan vendor:publish --tag=laravel-admin-register\n```\n发布资源，之后会生成一个 config/sms.php 配置，具体短信配置可查看 https://github.com/overtrue/easy-sms \n\n## 修改迁移\n一般来说我们在执行完 `php artisan admin:install` 的时候，都会修改 `CreateAdminTables`,我这里改为 mobile 为主要唯一索引，所以下面的配置 `username_field` 我也改为 mobile\n```php\nSchema::create(config('admin.database.users_table'), function (Blueprint $table) {\n    $table-\u003eincrements('id');\n    $table-\u003estring('mobile', 11)-\u003eunique();\n    $table-\u003estring('password', 60);\n    $table-\u003estring('remember_token', 100)-\u003enullable();\n    $table-\u003etimestamps();\n});\n```\n\n## 执行填充\n跑 `php artisan admin:install`的时候，如果有改动用户表的字段，会报错，你可以执行下面的命令重新执行兼容性的版本\n``` \nphp artisan db:seed --tag=AdminRegisterTablesSeeder\n```\n\n## 编辑登录\n在 app/Admin/Controllers/AuthController.php 中添加\n```php\nclass AuthController extends BaseAuthController\n{\n    public function postLogin(Request $request)\n    {\n        $this-\u003eloginValidator($request-\u003eall())-\u003evalidate();\n\n        $credentials = [\n            config('admin.extensions.laravel_admin_register.database.username_field', 'mobile') =\u003e $request-\u003eget($this-\u003eusername()),\n            'password' =\u003e $request-\u003eget('password'),\n        ];\n        $remember = $request-\u003eget('remember', false);\n\n        if ($this-\u003eguard()-\u003eattempt($credentials, $remember)) {\n            return $this-\u003esendLoginResponse($request);\n        }\n\n        return back()-\u003ewithInput()-\u003ewithErrors([\n            $this-\u003eusername() =\u003e $this-\u003egetFailedLoginMessage(),\n        ]);\n    }\n}\n```\n\n## 编辑扩展配置\n在 config/admin.php 添加配置\n\n```php\n'extensions' =\u003e [\n    'laravel_admin_register' =\u003e [\n        'cache_key' =\u003e 'register.code.', // 缓存前缀\n        'send_limit' =\u003e 60, // 限制 60 秒内只能发一次\n        'expires_in' =\u003e 300, // 5 分钟（300秒）内有效\n        'is_mock' =\u003e true, // 为 true 时不发短信，验证码为 0000\n        'database' =\u003e [\n            'username_field' =\u003e 'mobile', // 管理员数据库唯一索引字段，也就是存储手机号码的字段\n        ],\n        'register_as' =\u003e 'administrator', // 用户注册的默认角色 slug，可以登录后去创建角色\n    ]\n],\n```\n\n## 短信发送自定义\n编辑 app/Providers/AppServiceProvider.php\n```php\npublic function register()\n{\n    // 返回内容参考 https://github.com/overtrue/easy-sms 中不同短信服务商的要求，此处返回 $easysms-\u003esend() 的第二个参数\n    LaravelAdminRegister::setting(function ($code) {\n        return ['content' =\u003e \"验证码: $code ，请于5分钟内完成验证，若非本人操作，请忽略本短信。\"];\n    });\n}\n```\n\n## 体验\n\n执行 `php artisan serve`，然后你可以访问 http://127.0.0.1:8000/register 进行注册，测试环境验证码为 `0000` （见配置 is_mock）\n\n你可以使用账号 `18000000000` 密码 `admin` 去登录创建角色，修改注册用户的默认角色（见配置 register_as）\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanson%2Flaravel-admin-register","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhanson%2Flaravel-admin-register","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhanson%2Flaravel-admin-register/lists"}