Laravel-Mediable 项目教程

Laravel-Mediable 项目教程

laravel-mediableLaravel-Mediable is a package for easily uploading and attaching media files to models with Laravel 5.项目地址:https://gitcode.com/gh_mirrors/la/laravel-mediable

1、项目的目录结构及介绍

Laravel-Mediable 项目的目录结构如下:

laravel-mediable/
├── config/
│   └── mediable.php
├── database/
│   └── migrations/
├── src/
│   ├── Commands/
│   ├── Exceptions/
│   ├── Media/
│   ├── MediaUploader.php
│   ├── Mediable.php
│   ├── MediableServiceProvider.php
│   ├── MediaUploaderFacade.php
│   └── Support/
├── tests/
├── .editorconfig
├── .gitignore
├── .readthedocs.yml
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
├── UPGRADING.md
├── composer.json
├── infection.json.dist
├── phpstan.neon
└── phpunit.xml

目录介绍

  • config/: 包含项目的配置文件。
  • database/migrations/: 包含数据库迁移文件。
  • src/: 包含项目的源代码,包括命令、异常处理、媒体处理、服务提供者等。
  • tests/: 包含项目的测试文件。
  • .editorconfig, .gitignore, .readthedocs.yml: 项目配置文件。
  • CHANGELOG.md, CONTRIBUTING.md, LICENSE.md, README.md, UPGRADING.md: 项目文档文件。
  • composer.json, infection.json.dist, phpstan.neon, phpunit.xml: 项目依赖和配置文件。

2、项目的启动文件介绍

Laravel-Mediable 项目的启动文件主要包括:

  • src/MediableServiceProvider.php: 服务提供者文件,用于注册和启动项目的服务。
  • src/MediaUploaderFacade.php: 门面文件,提供对媒体上传器的访问。

服务提供者

MediableServiceProvider.php 文件负责注册和启动项目的服务,包括配置文件的发布和数据库迁移的运行。

门面

MediaUploaderFacade.php 文件提供了一个门面,用于简化对媒体上传器的访问。

3、项目的配置文件介绍

Laravel-Mediable 项目的主要配置文件是 config/mediable.php

配置文件内容

mediable.php 文件包含了项目的各种配置选项,例如上传目录、MIME 类型限制、聚合类型等。

return [
    'disk' => 'public',
    'allowed_disks' => ['public'],
    'strict_types' => false,
    'aggregate_types' => [
        'image' => [
            'image/jpeg',
            'image/png',
            'image/gif',
        ],
        // 其他聚合类型
    ],
    'max_size' => 1024 * 1024,
    'unique_filename' => true,
    'strict_extension' => false,
    'strict_mime' => false,
    'allow_unrecognized_types' => false,
    'allowed_extensions' => [],
    'allowed_mime_types' => [],
    'model' => Plank\Mediable\Media::class,
    'default_tag' => 'default',
    'unattached_media_expiration_days' => 1,
    'allow_unattached' => true,
];

配置项介绍

  • disk: 默认的文件系统磁盘。
  • allowed_disks: 允许的文件系统磁盘列表。
  • strict_types: 是否严格限制文件类型。
  • aggregate_types: 聚合类型配置。
  • max_size: 文件最大大小。
  • unique_filename: 是否生成唯一的文件名。
  • strict_extension: 是否严格限制文件扩展名。
  • strict_mime: 是否严格限制 MIME 类型。
  • allow_unrecognized_types: 是否允许未识别的文件类型。
  • allowed_extensions: 允许的文件扩展名列表。
  • allowed_mime_types: 允许的 MIME 类型列表。
  • model: 媒体模型类。
  • default_tag: 默认标签。
  • unattached_media_expiration_days: 未附加媒体的有效期天数

laravel-mediableLaravel-Mediable is a package for easily uploading and attaching media files to models with Laravel 5.项目地址:https://gitcode.com/gh_mirrors/la/laravel-mediable

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萧俭亚Ida

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值