GoravelGoravel
首页
视频
  • English
  • 简体中文
GitHub
首页
视频
  • English
  • 简体中文
GitHub
  • 前言

    • 升级指南

      • 从 v1.14 升级到 v1.15
      • 从 v1.13 升级到 v1.14
      • 历史版本升级
    • 贡献指南
    • 优秀扩展包
  • 入门指南

    • 安装
    • 配置信息
    • 文件夹结构
    • 编译
  • 核心架构

    • 请求周期
    • 服务容器
    • 服务提供者
    • Facades
  • 基本功能

    • 路由
    • HTTP 中间件
    • 控制器
    • 请求
    • 响应
    • 视图
    • Grpc
    • Session
    • 表单验证
    • 日志
  • 综合话题

    • Artisan 命令行
    • 缓存系统
    • 事件系统
    • 文件储存
    • 邮件
    • 队列
    • 任务调度
    • 本地化
    • 扩展包开发
    • 颜色
    • Strings
    • 辅助函数
  • 安全相关

    • 用户验证
    • 用户授权
    • 加密解密
    • 哈希
  • ORM

    • 快速入门
    • 模型关联
    • 数据库迁移
    • 数据填充
    • 模型工厂
  • 测试相关

    • 快速入门
    • HTTP Tests
    • Mock

Facades

  • 简介
  • facades 工作原理
  • facade 类参考

简介

facades 为应用的核心功能提供一个「静态」接口,能够提供更加灵活、更加优雅、易于测试的语法。

Goravel 所有的 facades 都定义在 github.com/goravel/framework/facades 下。我们可以很轻松的使用 facades:

import "github.com/goravel/framework/facades"

facades.Route().Run(facades.Config().GetString("app.host"))

facades 工作原理

facades 一般会在各模块 ServerProvider 的 Register 或 Boot 阶段进行实例化。

func (config *ServiceProvider) Register() {
  app := Application{}
  facades.Config = app.Init()
}

如果该 facades 使用了其他 facades,那么就在 ServerProvider 的 Boot 阶段进行实例化:

func (database *ServiceProvider) Boot() {
  app := Application{}
  facades.DB = app.Init()
}

facade 类参考

Facade文档
App容器
Artisan命令行工具
Auth用户认证
Cache缓存系统
Config配置信息
Crypt加密解密
Event事件系统
Gate用户授权
GrpcGrpc
Hash哈希
Log日志
Mail邮件
OrmORM
Queue队列
RateLimiter限流器
Route路由
Seeder数据填充
Schedule任务调度
Storage文件系统
Testing测试
Validation表单验证
Edit this page
Prev
服务提供者