galadrim/laravel-addresses
Composer 安装命令:
composer require galadrim/laravel-addresses
包简介
Simple address and contact management for Laravel 5.
关键字:
README 文档
README
Laravel Addresses
Simple address and contact management for Laravel 5 with automatical geocoding to add longitude and latitude. Uses the famous Countries package by Webpatser.
Installation
Require the package from your composer.json file
"require": { "vendocrat/laravel-addresses": "dev-master" }
and run $ composer update or both in one with $ composer require vendocrat/laravel-addresses.
Next register the following service providers and facades to your config/app.php file
'providers' => [ // Illuminate Providers ... // App Providers ... vendocrat\Addresses\AddressesServiceProvider::class, Webpatser\Countries\CountriesServiceProvider::class, ];
'providers' => [ // Illuminate Facades ... 'Address' => vendocrat\Addresses\Facades\Addresses::class, 'Countries' => Webpatser\Countries\CountriesFacade::class, ];
Configuration & Migration
$ php artisan vendor:publish $ php artisan countries:migration
This will create a config/addresses.php and the migration files. In the config file you can customize the table names, finally you'll have to run migration like so:
$ php artisan migrate
Check out Webpatser\Countries readme to see how to seed their countries data to your database.
Usage
Add an Address to a Model
$post = Post::find(1); $post->addAddress([ 'street' => '123 Example Drive', 'city' => 'Vienna', 'post_code' => '1110', 'country' => 'AT', // ISO-3166-2 or ISO-3166-3 country code 'is_primary' => true, // optional flag ]);
Alternativly you could do...
$address = [ 'street' => '123 Example Drive', 'city' => 'Vienna', 'post_code' => '1110', 'country' => 'AT', // ISO-3166-2 or ISO-3166-3 country code 'is_primary' => true, // optional flag ]; $post->addAddress($address);
Available attributes are street, city, post_code, state, country, state, note (for internal use), is_primary, is_billing & is_shipping. Optionally you could also pass lng and lat, in case you deactivated the included geocoding functionality and want to add them yourself.
Check if Model has an Address
if ( $post->hasAddress() ) { // Do something }
Get all Addresses for a Model
$addresses = $post->addresses()->get();
Get primary/billing/shipping Addresses
$address = $post->getPrimaryAddress(); $address = $post->getBillingAddress(); $address = $post->getShippingAddress();
Update an Address for a Model
$address = $post->addresses()->first(); // fetch the address $post->updateAddress($address, $new_attributes);
Delete an Address from a Model
$address = $post->addresses()->first(); // fetch the address $post->deleteAddress($address); // delete by passing it as argument
Delete all Addresses from a Model
$post->flushAddresses();
License
Licensed under MIT license.
Author
Handcrafted with love by Alexander Manfred Poellmann for vendocrat in Vienna & Rome.# laravel-addresses
galadrim/laravel-addresses 适用场景与选型建议
galadrim/laravel-addresses 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 41 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 01 月 27 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「contacts」 「addresses」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 galadrim/laravel-addresses 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 galadrim/laravel-addresses 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 galadrim/laravel-addresses 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A library that can render international postal addresses in different formats.
Laravel Package for opinionated addresses style
Addresses Manager for Laravel Enso
contacts
Yii2 Module Addresses
Geolocate IP addresses using a variety of third-party services
统计信息
- 总下载量: 41
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 16
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-01-27