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

钱包农场 API 开发手记 十三 收货地址

2018-04-11 00:00 411 查看

模型&数据库迁移&模型工厂&数据填充

php artisan make:model Address -m
php artisan migrate

php artisan make:seeder AddressesTableSeeder

public function run()
{
\App\Address::create([
'user_id'    => 1,
'username'    => '张三丰',
'postal_code'    => '523000',
'province_name'    => '广东省',
'city_name'    => '东莞市',
'county_name'    => '莞城街道',
'detail_info'    => '莞太路34号',
'tel_number'    => '18888888888',
'created_at' => new DateTime,
'updated_at' => new DateTime,
]);
}

php artisan db:seed --class=AddressesTableSeeder


策略

php artisan make:policy AddressPolicy --model=Address

public function update(User $user, Address $address)
{
return $user->isAuthorOf($address);
}

user.php

public function isAuthorOf($model)
{
return $this->id == $model->user_id;
}

AuthServiceProvider.php

protected $policies = [
'App\Model' => 'App\Policies\ModelPolicy',
Order::class => OrderPolicy::class,
];


路由

// 收货地址
$api->get('addresses', 'AddressesController@index')
->name('api.addresses.index');
$api->post('addresses', 'AddressesController@store')
->name('api.addresses.store');
$api->put('addresses/{address}', 'AddressesController@update')
->name('api.addresses.update');
$api->delete('addresses/{address}', 'AddressesController@destroy')
->name('api.addresses.destroy');


控制器

touch app/Transformers/AddressTransformer.php
php artisan make:request Api/AddressRequest
php artisan make:controller Api/V1/AddressesController --resource
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Laravel