Rental Manager Photos 包,可以推动基本系统,让您能够管理出租物业。

v2.0.0 2018-09-11 20:13 UTC

This package is auto-updated.

Last update: 2024-09-12 09:06:26 UTC


README

这是一个为 Rentbits 制作的包,便于维护和模块化管理出租列表。它包括所有迁移、模型和关系,以运行出租系统。

此包使用 Image Intervention 库和 league flysystem 包(用于 Rackspace、SFTP 和 AWS 访问)。因此,您无需直接在您的应用程序中安装它们。

安装、配置和使用

安装

通过 Composer

composer require rentalmanager/photos

配置

安装包后,它应该被 Laravel 自动发现。为了检查这一点,在您的终端中只需运行

$ php artisan

在那里您应该找到所有 rm:* 命令。

检查后的第一步是发布供应商

$ php artisan vendor:publish --tag="photos"

您可以在配置文件中设置缩略图大小、默认磁盘等。

之后,就取决于您了。如果您是一个勤奋的学习者,可以手动运行每个命令,但之后您只需简单地运行

$ php artisan rm:setup-photos

就是这样...

使用方法

此包用于在单独的表中存储照片。它将特质添加到物业和单元中,以绑定关系。

存储照片

您可以使用常规方式存储照片,使用 Eloquent ORM。

$photo = new Photo([...]);
$photo->save();

当您以常规方式存储照片时,您可以像这样关联物业

$property->attachPhoto(1, 10); 

其中第一个参数是照片的 ID,第二个是排序号。

或者您也可以轻松地分离物业的照片

$property->detachPhoto(1);

// or
$property->detachPhotos([1,2,3]);

因为我们已经将特质添加到物业和单元模型中,您可以通过以下方式获取照片对象

$photos = $object->getOrderedPhotos();

上述方法将按您给出的顺序返回照片。

要同步照片,您需要使用以下方法

$object->syncPhotos($photos);

$photos 是照片 ID 的数组。请注意,ID 的顺序最终将用于排序。这通常意味着如果您提供数组 [1,3,10,2] - 照片将以这种顺序显示。

外观

此包提供了简单照片处理的方法。

(首先您需要在类中使用外观)

use RentalManager\Photos\Facades\Photos;

在您的类中。

您可以利用以下方法

自动图像路径恢复

如果您正在存储外部图像,您需要获取存储路径等信息。幸运的是,此包提供了一个简单的包装来实现这一点。

$url = 'https://media.equityapartments.com/images/c_crop,x_0,y_0,w_1920,h_1080/c_fill,w_1920,h_1080/q_80/4206-28/the-kelvin-apartments-exterior.jpg';

$photoElements = Photos::parseExternalPhoto($url);

dump( $photoElements);

当然,您也可以启动缩略图生成器

$photo = Photo::find(1);

$photo = Photos::generateThumbnails($photo);

或者如果您只想将原始图像存储到存储中,稍后再处理缩略图

$photo = Photos::upload($path_to_image);

或者如果您想自动上传和生成缩略图

$photo = Photos::upload($path_to_image, false, true); // the last param is thumbnail generator

您也可以提供自己的路径

$photo = Photos::upload($path_to_image, 'store/there/instead');

或者您可以生成自动路径 env/properties/{random}

$path = Photos::generatePath($id = false);

就是这样,朋友们。