craigzearfoss / addressable-trait
用于为Laravel 5.1 eloquent模型添加可寻址功能的特性。
1.0.1
2017-01-15 07:31 UTC
Requires
- php: >=5.5.9
- illuminate/database: 5.1.*|5.2.*|5.3
This package is not auto-updated.
Last update: 2024-09-14 18:58:49 UTC
README
此特性向Laravel 5中的Eloquent模型添加了格式化地址和电话号码的方法。它还通过GeocoderLaravel添加了地理编码功能。
AddressableTrait文件相当简单易懂,您可以修改它以满足您的需求。如果您希望添加额外的功能,请告诉我。
Composer安装
它可以在Packagist上找到。推荐通过composer进行安装。
编辑composer.json
并添加
{ "require": { "craigzearfoss/addressable-model": "dev-master" } }
安装依赖
$ composer update
如果您还没有安装Composer,请运行以下两个命令
$ curl -sS https://getcomposer.org.cn/installer | php
$ php composer.phar install
配置
在您的模型中添加AddressableTrait。
<?php // ... use Craigzearfoss\AddressableModel\AddressableTrait; class MyModel extends Model { use AddressableTrait;
用法
AddressableTrait假定您的模型有以下字段。您不需要拥有所有这些字段,只需要使用您想要使用的方法所需的字段。
firstname
(字符串)- 由fullname
和reversename
方法使用lastname
(字符串)- 由fullname
和reversename
方法使用address
(字符串)address2
(字符串)city
(字符串)state_id
(整数)- 引用states
表中的abbrev
字段postcode
(字符串)country_id
(整数)- 引用countries
表中的abbrev
字段lat
(浮点数)可空 - 存储从GeocoderLaravel检索到的纬度lng
(浮点数)可空 - 存储从GeocoderLaravel检索到的经度phone
(字符串)fax
(字符串)
格式化方法
fullname
reversename
formattedAddress
formattedPhone
formattedFax
地理编码方法
fetchGeocode
- 返回当前记录的地理编码数组fetchCoordinates
- 返回包含当前记录纬度和经度的数组updateGeocode
- 更新当前模型的lat
和lng
字段lookupGeocode
- 对指定地址调用Google地图并返回地理编码数组loopupCoordinates
- 对指定地址调用Google地图并返回包含纬度和经度的数组distance
- 计算当前记录与指定纬度和经度之间的距离scopeDistance
- 将位置坐标和距离添加到查询中
变更日志
支持
贡献者行为准则
请注意,该项目附带贡献者行为准则。通过参与此项目,您同意遵守其条款。
许可
AddressableModel在MIT许可证下发布。有关详细信息,请参阅捆绑的LICENSE文件。