您的位置:首页 > 编程语言 > PHP开发

钱包农场 API 开发手记 一 开篇

2018-04-02 00:00 751 查看
摘要: 初始化

1.新建 Laravel 项目,并同步git

$ valet restart
$ cd ~/Sites
$ laravel new Farm-api

访问 http://farm-api.test/,新建成功。
$ cd ~/Sites/Farm-api
$ git checkout -b api
$ git init
$ git add . && git commit -m "Initial commit"
$ git remote add origin git@git.coding.net:qbgugu/Farm.git
$ git pull origin api --allow-unrelated-histories
$ git push -u origin api

修改时区 config/app.php

'timezone' => 'PRC',


2.安装 DingoAPI,并配置

修改 composer.json

.
.
"require": {
"php": "^7.1.3",
"dingo/api": "2.0.0-alpha1",
"fideloper/proxy": "^4.0",
"laravel/framework": "5.5.*",
"laravel/tinker": "^1.0"
}
.
.

$ composer update
$ php artisan vendor:publish

修改 .env

.
.
# dingo config
API_STANDARDS_TREE=prs
API_SUBTYPE=farm
API_PREFIX=api
# API_DOMAIN=farm-api.qbgoo.com
API_VERSION=v1
API_DEBUG=true


3.修改用户表结构

修改 AppServiceProvider.php ,手动配置迁移生成的字符串长度

.
.
public function boot()
{
Schema::defaultStringLength(191);
}
.
.

修改数据表字段,需要
doctrine/dbal
组件

$ composer require doctrine/dbal


3.新建基类

$ php artisan make:controller Api/V1/Controller

<?php

namespace App\Http\Controllers\Api\V1;

use Dingo\Api\Routing\Helpers;
use App\Http\Controllers\Controller as BaseController;

class Controller extends BaseController
{
use Helpers;
}


4.Sql日志

app\Providers\EventServiceProvider.php

// 新增SqlListener监听QueryExecuted
'Illuminate\Database\Events\QueryExecuted' => [
'App\Listeners\SqlListener',
],

app\Listeners\SqlListener.php

public function handle(QueryExecuted $event)
{
$sql = str_replace("?", "'%s'", $event->sql);
$log = vsprintf($sql, $event->bindings);

Log::info($log);
}


5.创建自己的辅助函数

touch app/helpers.php

composer.json

"autoload": {
"files": [
"app/helpers.php"
],
.
.

composer dump-autoload
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Laravel