Maison > développement back-end > Golang > Présentation du framework de roue MVC développé sur la base du framework de langage GO Gin : GinLaravel

Présentation du framework de roue MVC développé sur la base du framework de langage GO Gin : GinLaravel

藏色散人
Libérer: 2021-04-28 18:50:41
avant
3856 Les gens l'ont consulté

La colonne tutorielle suivante de golang vous présentera le framework de roue MVC développé sur la base du framework de langage GO Gin : J'espère qu'il sera utile aux amis dans le besoin. !

Github : github.com/fyonecon/ginlaravel

Gitee : gitee.com/fyonecon/ginlaravel

Introduction à GinLaravel et GoLaravel

Basée sur le développement du framework GO Gin, la structure et la philosophie du projet font référence à Laravel et prennent en charge le modèle de développement MVC. Ce projet affiche les données de traitement MVC, ainsi que les données de traitement du mode "Safe-Controller-Kit".

Dans la plupart des cas, le modèle SCK est orienté vers les API, etc. Il présente les caractéristiques d'une interface sécurisée, de données de requête directes et faciles à comprendre, d'une exploitation facile des données de format complexe (traitement par lots) et d'un accès large et sortie stricte des demandes. SCK n'a pas de couche de modèle et l'utilisation de model n'est pas recommandée. /Gen1/ démontre l'utilisation de MVC pour traiter les données ; /Gen3/ démontre l'utilisation de SCK pour traiter les données et les requêtes.

Prend désormais en charge

Go-MySQL, Go-Redis, mise à jour à chaud (nouvelle), MVC, sortie de modèle, interception de fréquence d'accès HTTP, HttpCors, cryptage symétrique ( ( Chinois disponible), intercepteur http, fichier de téléchargement de formulaire.

Concept

Soyez large à l'intérieur et strict à l'extérieur, orienté vers l'API, ce qui peut efficacement gagner du temps et maintenir de beaux cheveux.

Fonctionnalités de fonctionnement

Mémoire résidente, similaire à swoole, la vitesse de développement de Golang est un dixième de celle de PHP et peut prendre en charge les mises à jour à chaud.

Explication du répertoire du projet

-/app/Common/ Configuration des fonctions publiques et des paramètres de données personnalisés nécessaires pour l'encapsulation native Go

-/app/Http/ Contrôleur, modèle, intercepteur

-/app/Kit/ Services système personnalisés, y compris les services tiers et les services de fonctions système

-/bootstrap/ Démarrage du service système, configuration de référence globale de la base de données, généralement pas besoin de changer ici.

-/config/ Base de données MySQL, cache Redis, numéro de port http et autres configurations

-/routes/routage, prend également en charge le routage de modèles , Routage de type API

-/storage/ journal système, téléchargement de fichiers, cache statique

-/views/ dossier d'origine du rendu du modèle

-Le fichier binaire produit par le projet ginlaravel, dans l'environnement de production, utilisez

-go.mod Le chemin du module et la bibliothèque tierce dont dépend le projet Attendez l'introduction de

-server.go pour exécuter l'entrée go-main file de ce projet.

Principe de nommage

Fonction personnalisée : gros étui à chameau

Variable personnalisée : Petit cas de chameau

Structure personnalisée et membres de la structure : Grand cas de chameau

MySQL : minuscules + trait de soulignement

Nom de l'interface : minuscules + trait de soulignement

Nom du dossier personnalisé : big camel case

Nom du dossier de l'ensemble système : minuscules

Exécutez le projet

Allez exécuter l'environnement. Pour créer un environnement Go et Gin de base, veuillez vous référer à : blog.csdn.net/weixin_41827162/arti...

MySQL (veuillez importer le fichier /project information/ginlaravel.sql dans la base de données)

Exécutez "go run server.go" dans cmd pour démarrer le projet. Ou utilisez la méthode de mise à jour à chaud pour démarrer le service http et exécuter "fresh" dans le répertoire cmd.

Visitez "127.0.0.1:8090/gen1/user/list_user "

Projet en ligne : la valeur de serverConfig["ENV"] est transformé en version, puis exécutez-le en utilisant la même méthode que ci-dessus.

Comment initialiser le projet

Prenons le répertoire actuel/Users/fyonecon/go/src/ comme exemple

获取源代码:
git clone https://github.com/fyonecon/ginlaravel.git
cd go/src/ginlaravel

使用 govendor 安装依赖包:
go get -u -v github.com/kardianos/govendor
govendor sync

初始化项目:
go mod init

构建依赖:
go mod tidy
go mod vendor

打包成二进制文件:
go build -mod=mod

启动MySQL数据库:请自行启动。

启动Redis:请自行启动。

在/config/mysql.go配置数据库信息,用来连接你的数据库。

启动http服务:
go run server.go
Copier après la connexion

Comment exécuter le nouveau service de mise à jour à chaud

Prenons le répertoire du projet/Users/fyonecon/go/src/ginlaravel comme exemple

去.bash_profile文件目录:
cd ~运行:
source ~/.bash_profile

切换到项目目录:
cd go/src/ginlaravel

开启热更:
fresh

退出http服务用快捷键:Ctrl + C 。或直接关闭终端窗口。
Copier après la connexion

Ce qui précède explique comment activer le nouveau service de mise à jour à chaud pour le projet.
Si vous souhaitez garder la fenêtre du terminal ouverte, veuillez utiliser screen (yum install screen) pour garder la fenêtre.

热更服务文档:github.com/gravityblast/fresh 。

(Mac环境)将项目打包成二进制文件

项目根目录:
    go build -mod=mod

此时,在项目目录生成或更新了ginlaravel二进制文件。
开启文件的可执行权限:
    chmod 773 ginlaravel

在根目录运行:    ./ginlaravel

即可开启二进制服务。
Copier après la connexion

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!

Étiquettes associées:
source:learnku.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal