Maison  >  Article  >  développement back-end  >  Comment organiser les itinéraires dans Gin : un guide pour la définition d'itinéraires groupés ?

Comment organiser les itinéraires dans Gin : un guide pour la définition d'itinéraires groupés ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-03 05:26:30826parcourir

How to Organize Routes in Gin: A Guide to Grouped Route Definition?

Comment organiser les itinéraires dans Gin

Afin d'éviter d'encombrer le fichier principal avec des définitions d'itinéraire, vous pouvez regrouper les itinéraires dans des fichiers séparés. Cette approche permet une meilleure organisation et maintenabilité du code.

Pour créer un regroupement de routes imbriquées, vous pouvez stocker la variable du routeur dans une structure ou une variable globale. Les fichiers individuels peuvent ensuite ajouter des gestionnaires à cette instance de routeur partagé.

Exemple de mise en œuvre

routes.go

<code class="go">package app

import (
    "github.com/gin-gonic/gin"
)

type routes struct {
    router *gin.Engine
}

func NewRoutes() routes {
    return routes{
        router: gin.Default(),
    }
}

func (r routes) addPing(rg *gin.RouterGroup) { }
func (r routes) addUsers(rg *gin.RouterGroup) { }

func (r routes) Run(addr ...string) error { return r.router.Run() }</code>

ping.go

<code class="go">package app

import "github.com/gin-gonic/gin"

func (r routes) addPing(rg *gin.RouterGroup) {
    ping := rg.Group("/ping")
    ping.GET("/", pongFunction)
}</code>

users.go

<code class="go">package app

import "github.com/gin-gonic/gin"

func (r routes) addUsers(rg *gin.RouterGroup) {
    users := rg.Group("/users")
    users.GET("/", getUsersFunction)
}</code>

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:
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