Table des matières
laravel-doc
Conditions d'installation
Installation
Visitez /doc, vous pouvez voir la documentation de ce projet
Visitez /apidoc, vous pouvez voir la documentation de l'interface de ce projet
Comment utiliser
Rédaction de documents communs
Description du contrôleur
Écrire le document d'interface API
laravel_doc.php
Multi- projet
Les documents que vous ajoutez
, interface Lors de la création d'un Requête ajax,
Maison cadre php Laravel Outil de documentation Laravel

Outil de documentation Laravel

Jul 03, 2019 pm 02:33 PM
laravel

Outil de documentation Laravel

laravel-doc

laravel-doc est un projet utilisé pour générer des documents, rédiger des documents via markdown et fournir un accès Web aux documents

Conditions d'installation

  • PHP >= 7.0.0
  • Laravel >= 5

Installation

 composer require foryoufeng/laravel-doc
Copier après la connexion

Si vous êtes Si vous utilisez Laravel 5.5 ou une version antérieure, vous devez ajouter le fournisseur de services de config/app.php :

 Foryoufeng\Doc\DocServiceProvider::class
Copier après la connexion

Exécutez la commande suivante pour publier le fichier de ressources

 php artisan doc:install
Copier après la connexion

Après avoir publié la ressource, il y a il y aura beaucoup plus de fichiers

/public/vendor/laravel-doc  //样式文件

/resources/views/docs   //界面文件

/resources/mds/docs  //文档文件

/resources/mds/apidocs  //api文件

/app/Http/Controllers/Docs  //增加了控制器文件

config/laravel_doc.php  //文档配置文件

routes/web.php中增加了路由文件
Copier après la connexion

Visitez /doc, vous pouvez voir la documentation de ce projet

Visitez /apidoc, vous pouvez voir la documentation de l'interface de ce projet

Comment utiliser

Rédaction de documents communs

Créez votre fichier md dans resources/mds/docs, tel que demo.md, ajoutez le contenu dont vous avez besoin,
puis ajoutez-le à app/Http/Controllers/Docs/LaravelDocController.php dans index_md Les données sont accessibles, par exemple :

//默认已经加入了2个例子
private function index_md()
    {
        return  [
            [
                'name' => config('laravel_doc.languages.install'),
                'doc_link' => 'install.md',
            ],
            [
                'name' => config('laravel_doc.languages.how_use'),
                'doc_link' => 'how_use.md',
            ],
            [
                'name' => 'demo',
                'doc_link' => 'demo.md',
            ],
        ];
    }
Copier après la connexion

Puis accédez à /doc pour voir l'effet

Description du contrôleur

Chemin du document par défaut

$this->mds_path=resource_path('mds/docs/');
Copier après la connexion

getMenu()Le code à l'intérieur est le menu affiché dans le document, qui est nécessaire pour écrire le document

  • Configuration de plusieurs exemples de menu
    protected function getMenu()
    return [
                [
                    'name'=>config('laravel_doc.languages.project_doc'),
                    'spread'=>true,//菜单是否展开,false不展开
                    'children'=>[
                            'name'=>config('laravel_doc.languages.install'),
                            'doc_link'=>'install.md',
                         ],
                ],
                [
                    'name'=>config('laravel_doc.languages.project_doc'),
                    'spread'=>false,//不展开菜单
                    'children'=>[
                            'name'=>config('laravel_doc.languages.install'),
                            'doc_link'=>'install.md',
                     ],
                ],
            ];
    }
    Copier après la connexion
  • Après avoir configuré le menu, vous peut resources/mds/docsCréer le fichier md spécifié dans doc_link, puis écrire le document

Écrire le document d'interface API

Créer votre fichier md dans resources/mds/apidocs , comme demo.md, ajoutez le contenu dont vous avez besoin,
puis ajoutez des données à app/Http/Controllers/Docs/LaravelApiDocController.php de index_md pour y accéder, par exemple :

private function index_md()
    {
        return  [
            [
                'name' => 'apidoc_html',
                'doc_link' => 'apidoc_html.md',
                //可自行修改你的$this->host来使用你自己定义的访问地址
                'url' => $this->host.'apidoc/html',
                'request_type' => 'get',//请求方式 get或者post
                //请求参数
                'params'=>[
                    'name'=>'apidoc_html.md',
                ]
            ],
            [
                'name' => 'demo',
                'doc_link' => 'demo.md',
                'url' => $this->host.'apidoc/html',
                'request_type' => 'get',//请求方式 get或者post
                //给定一些需要请求的参数
                'params'=>[
                    'name'=>'',
                    'user_id'=>'',
                ]
            ],
        ];
    }
Copier après la connexion

puis accédez à /apidoc pour voir Effet

Cliquez sur la démo fournie :apidoc_html pour voir le chemin de la requête ci-dessus et les paramètres de requête requis, ainsi que le document de paramètres suivant

Cliquez sur le bouton 发送请求 pour exécuter la requête ajax, s'il n'y a pas de problème avec l'interface, les données ajax seront renvoyées
A ce moment, cliquez sur 生成文档, et une zone d'édition de markdown et un rendu à droite s'ouvriront. Cette interface obtient la page actuellement cliquée.
Le chemin de la requête, les paramètres, la valeur de retour, etc. définis dans , vous pouvez modifier 接口人 dans l'effet d'aperçu, expliquer chaque paramètre dans 参数说明,
et la description de la valeur de retour, etc., puis cliquez sur le bouton 生成, générera le fichier $this->mds_pathdoc_link
resources/mds/apidocs/demo.md description du fichier de configuration

    //laravel-doc的名字
    'name' => 'Laravel-doc',
    //用在了定义撰写接口人的名字
    'author' => env('DOC_AUTHOR','foryoufeng'),
    //接口请求发送了这个token
    'token' => env('DOC_TOKEN','doc'),
    //做国际化时可以用到
    'languages'=>[
        'search'=>'搜索',
        'search_result'=>'搜索结果',
        'project_doc'=>'项目文档',
        'doc_name'=>'文档名称',
        'install'=>'安装',
        'how_use'=>'使用说明',
        'request_type'=>'http请求方式',
        'request_url'=>'请求地址',
        'send_request'=>'发送请求',
        'generate_doc'=>'生成文档',
        'welcome_use'=>'欢迎使用',
        'param'=>'参数',
        'value'=>'值',
        'generate'=>'生成',
    ]
Copier après la connexion

Avancé

laravel_doc.php

Multi- projet

    Si votre projet est relativement petit et que vous n'avez besoin d'écrire qu'un seul document et un document d'interface API, alors dans
  • et

    Les documents que vous ajoutez

    devraient essentiellement répondre aux exigences

    app/Http/Controllers/Docs/LaravelApiDocController.phpapp/Http/Controllers/Docs/LaravelDocController.php
    Si vous avez plusieurs projets, vous pouvez copier

    ,
  • , et en créer un nouveau dans le répertoire
pour votre préparation Écrivez le répertoire du document

puis définissez les itinéraires requis dans le fichier de routage Vous devez copier les itinéraires suivants app/Http/Controllers/Docs

//doc route
Route::group(['namespace'=>'Docs'],function (){
    Route::get('doc', 'LaravelDocController@index')->name('doc.index');
    //md文件返回到html
    Route::get('doc/html', 'LaravelDocController@html')->name('doc.html');
    Route::get('apidoc', 'LaravelApiDocController@index')->name('doc.apidoc');
    //md文件返回到html
    Route::get('apidoc/html', 'LaravelApiDocController@html')->name('doc.apidoc.html');
    //预览api文档
    Route::post('apidoc/markdown', 'LaravelApiDocController@markdown')->name('doc.apidoc.markdown');
    //生成api文档
    Route::post('apidoc/save', 'LaravelApiDocController@save')->name('doc.apidoc.save');

});
Copier après la connexion
resources/views/docsresources/mds/
Internationalisation
    peut être modifié
  • dans <.> pour changer la langue. La valeur par défaut fournie est

    config/laravel_doc.phplanguages中文Interception de l'interface

  • Il y a une configuration
  • dans

    , interface Lors de la création d'un Requête ajax,

    est inclus dans

    . L'interface peut utiliser cette configuration pour effectuer un traitement config/laravel_doc.php sur token. Par exemple, en utilisant le header spécifié, vous pouvez obtenir les informations utilisateur correspondantes et exécuter l'interface. traitement. Demandes et missions, etc. Access-Token
    中间件tokenconseils

Pour plus d'articles techniques liés à Laravel, veuillez visitez la colonne

Apprenez dans la colonne Tutoriel Laravel 项目为了通用,我并没有提供中间件进行文档和接口的拦截,出于安全考虑,建议使用者可以根据自身需求编写中间件进行文档的保护 !

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 de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Apr 01, 2025 pm 02:45 PM

Méthode pour obtenir le code de retour lorsque l'envoi par e-mail de Laravel échoue. Lorsque vous utilisez Laravel pour développer des applications, vous rencontrez souvent des situations où vous devez envoyer des codes de vérification. Et en réalité ...

La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? Mar 31, 2025 pm 11:24 PM

Laravel Schedule Tâche d'exécution de dépannage non réactif Lorsque vous utilisez la planification des tâches de calendrier de Laravel, de nombreux développeurs rencontreront ce problème: Schedule: Exécuter ...

Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Mar 31, 2025 pm 11:48 PM

La méthode de traitement de l'échec de l'e-mail de Laravel à envoyer le code de vérification est d'utiliser Laravel ...

Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Apr 01, 2025 am 07:09 AM

Comment implémenter la fonction du tableau de Cliquez sur personnalisé pour ajouter des données dans DCATADMIN (Laravel-Admin) lors de l'utilisation de DCAT ...

Laravel - Serveur de vidage Laravel - Serveur de vidage Aug 27, 2024 am 10:51 AM

Laravel - Dump Server - Le serveur de dump Laravel est livré avec la version de Laravel 5.7. Les versions précédentes n'incluent aucun serveur de dump. Le serveur de vidage sera une dépendance de développement dans le fichier laravel/laravel composer.

Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Partage de connexion Laravel Redis: pourquoi la méthode de sélection affecte-t-elle d'autres connexions? Apr 01, 2025 am 07:45 AM

L'impact du partage des connexions redis dans Laravel Framework et sélectionnez Méthodes Lors de l'utilisation de Laravel Framework et Redis, les développeurs peuvent rencontrer un problème: grâce à la configuration ...

Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Laravel Multi-Lenant Extension Stancl / Tenancy: Comment personnaliser l'adresse hôte d'une connexion de base de données de locataire? Apr 01, 2025 am 09:09 AM

Connexion de la base de données des locataires personnalisés dans le package d'extension multi-locataire Laravel Stancl / location Lors de la construction d'applications multi-locataires à l'aide du package d'extension multi-locataire Laravel Stancl / location, ...

Laravel – URL de l'action Laravel – URL de l'action Aug 27, 2024 am 10:51 AM

Laravel - URL d'action - Laravel 5.7 introduit une nouvelle fonctionnalité appelée « URL d'action appelable ». Cette fonctionnalité est similaire à celle de Laravel 5.6 qui accepte la méthode string in action. L'objectif principal de la nouvelle syntaxe introduite par Laravel 5.7 est de diriger

See all articles