第1章 项目创建与模板导入

一、[可跳过]开发环境与工具介绍

composer 下载TP5.0 

composer create-project topthink/think=5.0.* tp5  --prefer-dist

后台使用X-admin v1.0 版本 官网下载:http://x.xuebingsi.com/index/down/index.html

 

二、入口文件与后台模块自动绑定

使用TP5的命令行:创建admin 模块

php think build --module Admin

在入口文件public下复制index.php

修改名称维admin.php

同时修改application下的配置文件config中

 // 入口自动绑定模块
    'auto_bind_module'       => true,
//默认是false 修改为true

复制config.php文件到admin模块文件夹中

修改为:

<?php
//后台配置文件
return [
    'view_replace_str'  => [
  //重置_STATIC__常量
        '__STATIC__' => '/static/admin',
    ],
];

备注:

TP5隐藏index.php


可以去掉URL地址里面的入口文件 index.php ,但是需要额外配置WEB服务器的重写规则。
以 Apache 为例,需要在入口文件的同级添加 .htaccess 文件(官方默认自带了该文件),内容如下:

<IfModule    mod_rewrite.c>
Options    +FollowSymlinks    -Multiviews
RewriteEngine    on
RewriteCond    %{REQUEST_FILENAME}    !-d
RewriteCond    %{REQUEST_FILENAME}    !-f
RewriteRule    ^(.*)$    index.php/$1    [QSA,PT,L]
</IfModule>


如果用的 phpstudy ,规则如下:

<IfModule    mod_rewrite.c>    
Options    +FollowSymlinks    -Multiviews    
RewriteEngine    on    
RewriteCond    %{REQUEST_FILENAME}    !-d    
RewriteCond    %{REQUEST_FILENAME}    !-f    
RewriteRule    ^(.*)$    index.php    [L,E=PATH_INFO:$1]    
</IfModule>


接下来就可以使用下面的URL地址访问了
http://tp5.com/index/index/index
http://tp5.com/index/index/hello


如果你使用的 apache 版本使用上面的方式无法正常隐藏 index.php ,可以尝试使用下面的方式配置
.htaccess 文件:

<IfModule    mod_rewrite.c>
Options    +FollowSymlinks    -Multiviews
RewriteEngine    on
RewriteCond    %{REQUEST_FILENAME}    !-d
RewriteCond    %{REQUEST_FILENAME}    !-f
RewriteRule    ^(.*)$    index.php?/$1    [QSA,PT,L]
</IfModule>


如果是 Nginx 环境的话,可以在 Nginx.conf 中添加:
 

location/ {// …..省略部分代码
    if(!-e $request_filename){
          rewrite  ^(.*)$ /index.php?s=/$1 last;
           break;
      }
}

 

三、后台模板导入与公共文件分离

将需要的后台模板对应的控制器进行创建

这里我们还是使用TP5命令行

php think make:controller admin/Admin
php think make:controller admin/Index
php think make:controller admin/Artcile
php think make:controller admin/Category
php think make:controller admin/Banner
php think make:controller admin/Login
php think make:controller admin/System

在admin模块下创建公共控制器文件夹common并创建基础控制器Base.php

<?php
namespace app\admin\common;

use think\Controller;


class Base extends Controller
{
   
}

所有创建的后台控制器继承基础控制Base

演示Index控制器

<?php
namespace app\admin\controller;

use app\admin\common\Base;

class Index extends Base
{
    public function index()
    {
        //渲染后台首页视图
        return $this->fetch('index');

    }
    public function welcome()
    {
        //渲染后台首页视图
        return $this->fetch('welcome');
    }


}

在admin模块中view文件夹下创建对应的视图文件夹同时对视图进行公共部分分离在view文件夹下创建公共文件夹public如下图

演示index.html

<!DOCTYPE html>
<html>
{include file='public/header' /} <!--公共头部-->
    <body>
        <div class="layui-layout layui-layout-admin">
            <div class="layui-header header header-demo">
                <div class="layui-main">
                    <a class="logo" href="__STATIC__/index.html">
                        X-admin v1.0
                    </a>
                    <ul class="layui-nav" lay-filter="">
                      <li class="layui-nav-item"><img src="__STATIC__/images/logo.png" class="layui-circle" style="border: 2px solid #A9B7B7;" width="35px" alt=""></li>
                      <li class="layui-nav-item">
                        <a href="javascript:;">admin</a>
                        <dl class="layui-nav-child"> <!-- 二级菜单 -->
                          <dd><a href="">个人信息</a></dd>
                          <dd><a href="">切换帐号</a></dd>
                          <dd><a href="{:url('login/logout')}">退出</a></dd>
                        </dl>
                      </li>

                      <li class="layui-nav-item x-index"><a href="/">前台首页</a></li>
                    </ul>
                </div>
            </div>
            {include file='public/left_menu' /} <!--公共菜单-->
            <div class="layui-tab layui-tab-card site-demo-title x-main" lay-filter="x-tab" lay-allowclose="true">
                <div class="x-slide_left"></div>
                <ul class="layui-tab-title">
                    <li class="layui-this">
                        我的桌面
                        <i class="layui-icon layui-unselect layui-tab-close">ဆ</i>
                    </li>
                </ul>
                <div class="layui-tab-content site-demo site-demo-body">
                    <div class="layui-tab-item layui-show">
                        <iframe frameborder="0" src="{:url('index/welcome')}" class="x-iframe"></iframe>
                    </div>
                </div>
            </div>
            <div class="site-mobile-shade">
            </div>
        </div>
        {include file="public/base_js" /}<!--公共js文件-->

    </body>
</html>

四、制作后台各菜单项首页展示

 

去除不需的菜单,留下本项目需要的几项基础功能菜单

如下图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Python中导入Word模板并填充试题,你可以按照以下步骤进行操作: 1. 首先,确保你已经安装了所需的第三方库。根据引用\[1\]中的说明,你需要安装python-docx和xlrd库。你可以使用pip命令来安装它们。 2. 创建一个函数来处理模板填充。根据引用\[2\]中的示例代码,你可以使用python-docx库来打开Word模板文件,并使用replace方法替换模板中的占位符。你可以根据需要添加更多的替换操作。最后,保存填充后的Word文档。 3. 使用os库来处理文件路径。根据引用\[3\]中的示例代码,你可以使用os.path.join方法来构建文件路径。这将有助于你在保存填充后的Word文档时指定正确的路径。 下面是一个示例代码,演示了如何导入Word模板并填充试题: ```python import os import random from docx import Document def fill_template(title, type1, num): document = Document('模板.docx') # 替换为你的模板文件路径 for paragraph in document.paragraphs: paragraph.text = paragraph.text.replace('xxx', title) paragraph.text = paragraph.text.replace('x00', type1) paragraph.text = paragraph.text.replace('x11', num) title = str(random.randint(1, 9999)) + title document.save(title + '.docx') # 示例用法 fill_template('标题', '类型', '数量') ``` 请注意,你需要将代码中的`'模板.docx'`替换为你实际使用的Word模板文件的路径。另外,你可以根据需要修改占位符和填充数据的内容。 希望这可以帮助到你! #### 引用[.reference_title] - *1* *2* [Python自动化办公实例excel数据批量导入word模板中](https://blog.csdn.net/qq_41560771/article/details/116646476)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [使用python将Excel数据填充Word模板并生成Word](https://blog.csdn.net/weixin_39805883/article/details/110888417)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值