<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                # 建表 ## 配置表 ### 建表語句 ~~~SQL DROP TABLE IF EXISTS `config`; CREATE TABLE `config` ( `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增主鍵', `title` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '配置名', `value` varchar(600) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '配置值', `desc` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '配置描述', `created_at` timestamp NULL DEFAULT '0000-00-00 00:00:00' COMMENT '添加時間', `updated_at` timestamp NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新時間', PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB AUTO_INCREMENT = 1992 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '配置表' ROW_FORMAT = Dynamic; ~~~ ### 代碼生成 找到后臺代碼生成 `開發工具 -> 代碼生成器` 選擇 `config` 表 勾選 `創建模型` `創建數據倉庫` `創建控制器` `創建翻譯文件` > 后面都可以按照這種方式生成代碼 添加路由 `app\Admin\routes.php` ~~~php ... use App\Admin\Controllers\ConfigController; ... Route::group([ ... ], function (Router $router) { ... $router->get('/config/setting', [ConfigController::class,'setting']); }); ~~~ ### 創建菜單 創建 `網站` 一級菜單 創建 `網站` 菜單的二級菜單 `系統設置` 路徑填寫 `/setting/setting` ### 創建工具表單 輸入指令 ~~~bash > php artisan admin:form Setting ~~~ ### 編輯控制器 `app\Admin\Controllers\ConfigController.php` ~~~php ... use Dcat\Admin\Layout\Content; use Dcat\Admin\Widgets\Card; use App\Admin\Forms\Setting; ... public function setting(Content $content) { return $content->title('系統配置')->body(new Card(new Setting())); } ~~~ ### 修改工具表單 #### 構建表單 這里的工具表單的語法和普通的表單語法一樣 [工具表單](https://learnku.com/docs/dcat-admin/2.x/tools-form/8125#183ca1) `app/Admin/Forms/Setting.php` ~~~php public function form() { $this->text('title', '網站標題') ->required(); $this->text('keyword', '網站關鍵詞') ->required(); $this->text('description', '網站描述') ->required(); $this->image('logo', '網站LOGO') ->autoUpload() ->move('/system/' . date('Ymd')) ->uniqueName() ->required(); $this->textarea('copyright', '版權') ->required(); $this->text('qq', '客服QQ') ->required(); } ~~~ 增加默認值 `app/Admin/Forms/Setting.php` ~~~php ... use App\Models\Config; ... public function default() { $configModel = new Config(); return [ 'title' => $configModel->getConfig('title'), 'keyword' => $configModel->getConfig('keyword'), 'description' => $configModel->getConfig('description'), 'logo' => $configModel->getConfig('logo'), 'copyright' => $configModel->getConfig('copyright'), 'qq' => $configModel->getConfig('qq'), ]; } ~~~ config模型增加根據 配置名獲取配置值的方法 `app\Models\Config.php` ~~~php public function getConfig($title) { $value = self::where('title', $title) ->firstOr(function () { return ''; }); return $value->value ?? $value; } ~~~ 添加表單處理代碼 `app\Admin\Forms\Setting.php` ~~~php public function handle(array $input) { foreach ($input as $title => $value) { $configModel = new Config(); $configModel->createOrUpdate($title, $value); } return $this ->response() ->success('更新成功') ->refresh(); } ~~~ 增加對應的邏輯處理 `app\Models\Config.php` ~~~php public function createOrUpdate($title = '', $value = '') { if ($title) { $config = self::where('title', $title) ->first(); if ($config) { if ($config->value !== $value) { self::where('title', $title) ->update([ 'value' => $value, 'updated_at' => date('Y-m-d H:i:s'), ]); } } else { self::where('title', $title) ->insert([ 'title' => $title, 'value' => $value, 'created_at' => date('Y-m-d H:i:s'), ]); } } } ~~~ 此時上傳表單發現 圖片可以正常上傳但是不顯示 是因為路徑不對 修改配置文件 `config\filesystems.php` ~~~php 'disks' => [ ... 'admin' => [ 'driver' => 'local', 'root' => public_path('uploads'), 'visibility' => 'public', 'url' => env('APP_URL').'/uploads', ], ], ~~~ `config\admin.php` ~~~php 'upload' => [ // Disk in `config/filesystem.php`. 'disk' => 'admin', ... ], ~~~ 重新上傳即可
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看