Maison  >  Article  >  cadre php  >  Analyse approfondie du chemin du modèle de configuration ThinkPHP5

Analyse approfondie du chemin du modèle de configuration ThinkPHP5

angryTom
angryTomavant
2020-03-06 10:21:175223parcourir

Cet article présente comment thinkphp définit le chemin du modèle front-end et le chemin du modèle back-end. Il a une certaine valeur de référence. J'espère qu'il sera utile aux amis qui apprennent thinkPHP !

Analyse approfondie du chemin du modèle de configuration ThinkPHP5

Analyse approfondie du chemin du modèle de paramètres ThinkPHP5

Le chemin du modèle par défaut se trouve dans le fichier module/vue . Si vous pensez que cela n'est pas pratique à gérer et que vous souhaitez le définir dans le répertoire Modèle, vous pouvez le faire.

Paramètres du modèle, les autres paramètres qui peuvent être affectés sont les paramètres config.php template->view_path sous le module actuel.

Fonctionnement pratique

(Tutoriel recommandé : tutoriel thinkphp)

1. Configurer les paramètres partagés

Définissez certains paramètres dans apps/config.php pour faciliter l’appel de config.php sous le module Index ou Admin.

apps/config.php, ajoutez quelques paramètres.

'template'               => [// 模板路径
        'view_path'    => 'template/',     // 就是这里
/**
     * 前台文件配置
     * Author: MR.zhou
     * */
    'index' => [
        // 模快名称
        'model_name' =>'index',
        // 默认模板文件名称
        'default_template' => 'default',       // 这里可以切换模块下的默认模板名称
    ],
    /**
     * 后台文件配置
     * Author: MR.zhou
     * */
    'admin'=>[
        // 模快名称
        'model_name' =>'admin',
        // 默认模板文件名称
        'default_template' =>'default',        // 这里可以切换模块下的默认模板名称
],

2. Définir les paramètres du modèle

index/config.php

 'template'               => [
    // 模板路径
    'view_path'    => config('template.view_path').config('index.model_name').'/'.config('index.default_template').'/',
],

admin/config.php

<?php
//配置文件
return [
    // 模板配置
    &#39;template&#39;               => [
        // 模板路径
        &#39;view_path&#39;    => config(&#39;template.view_path&#39;).config(&#39;admin.model_name&#39;).&#39;/&#39;.config(&#39;index.default_template&#39;).&#39;/&#39;,
    ],
];

3. Analyse des paramètres de configuration

Ce qui précède sont les paramètres de configuration donnés par d'autres sur le site officiel de thinkPHP, mais ne parvenez-vous pas à afficher correctement la page selon la configuration ci-dessus ? Il y a plusieurs malentendus que vous devez comprendre. Tout d'abord, view_path =>'template/' dans le fichier de configuration des paramètres partagés définit en fait le fichier modèle comme modèle. Cependant, certaines personnes souhaitent uniquement définir le chemin du modèle sur le front-end. et utilisez toujours la vue par défaut en arrière-plan. Mais un tel paramètre définit également le chemin du modèle d’arrière-plan. Comment devrions-nous résoudre ce problème ? L'éditeur ci-dessous propose deux façons de résoudre le problème de la définition uniquement du chemin du modèle front-end mais pas du back-end

La première  : ne pas définir le chemin du modèle dans le fichier de configuration partagé , mais en le définissant dans le chemin du modèle du module d'index, cela n'a donc rien à voir avec l'arrière-plan

fichier apps/index/config.php

&#39;template&#39;               => [
    // 模板路径
    &#39;view_path&#39;    => &#39;template/&#39;.config(&#39;index.default_template&#39;).&#39;/&#39;,
],

Bien sûr, la configuration de l'index Le fichier est toujours défini dans mon fichier de configuration partagé, qui est le même que le niveau du modèle, au lieu de le mettre dans le fichier modèle

apps/config.php

/**
     * 前台文件配置
     * Author: MR.zhou
     * */
    &#39;index&#39; => [
        // 模快名称
        &#39;model_name&#39; =>&#39;index&#39;,
        // 默认模板文件名称
        &#39;default_template&#39; => &#39;default&#39;,       // 这里可以切换模块下的默认模板名称
    ],

Le deuxième type : Définissez le chemin du modèle dans le fichier de configuration partagé en tant que modèle, et définissez le chemin du modèle dans le module d'index, et redéfinissez view_path en arrière-plan =>''

apps/config.php file

/**
     * 前台文件配置
     * Author: MR.zhou
     * */
    &#39;index&#39; => [
        // 模快名称
        &#39;model_name&#39; =>&#39;index&#39;,
        // 默认模板文件名称
        &#39;default_template&#39; => &#39;default&#39;,       // 这里可以切换模块下的默认模板名称
    ],
    
    'template'               => [// 模板路径
        'view_path'    => 'template/',     // 就是这里

Les fichiers de configuration en arrière-plan actuels sont les suivants

apps/index/config.php文件
&#39;template&#39;               => [
    // 模板路径
    &#39;view_path&#39;    => config(&#39;template.view_path&#39;).config(&#39;index.model_name&#39;).&#39;/&#39;.config(&#39;index.default_template&#39;).&#39;/&#39;,
],

apps/admin/config.php file

&#39;template&#39;               => [
    // 模板路径
    &#39;view_path&#39;  => &#39;&#39;,
],

Pour plus de didacticiels thinkPHP, veuillez prêter attention à le site PHP chinois !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer