larvel php restful_laravel 实现一个简单的 RESTful API

创建一个 Article 资源

php artisan make:resourceArticle

你可以在 app/Http/Resources 目录下看到你刚刚生成的 Article 资源

当然我们还需要 Article 的数据库迁移、模型和控制器。我们能用这个命令快速的创建这些。

创建相关的model和contrlloer

php artisan make:model Models/Article -mc

修改迁移文件:跟目录databaes/migrations/2018_11_02_062640_create_articles_table

具体字段类型和索引,请参考https://laravelacademy.org/post/6171.html

public functionup()

{

Schema::create('articles'/*表名*/, function (Blueprint $table) {$table->/*字段类型 主键,默认11*/increments('uid')->comment('用户id');//字段和备注

$table->/*字段类型 varchar 30*/string('username','60')->/*唯一索引*/unique()->comment('用户名称');$table->/*字段类型 varchar 30*/string('email','30')->unique()->comment('用户邮箱');$table->ipAddress('ipAddress')->comment('ip地址');$table->timestamps();

});

}

然后我们运行命令创建对应数据表(然后你的数据库中就会生成 migrations//迁移文件表 articles//你创建的表):

php artisan migrate//如表结构填错了可执行回滚操作重新创建

php artisan migrate:rollback

回到我们的model层:fillable 里面的字段我们可以进行create和update<?php

namespace App\Models;useIlluminate\Database\Eloquent\Model;class Article extendsModel

{protected $fillable = ['username', 'email', 'ipAddress'];

}

laravel 自带的有个填充数据的工具为我们添加测试数据:

填充器说明:https://laravelacademy.org/post/9153.html

就会成功一个databaes/migrations/seeds/ArticlesTableSeeder.php文件

php artisan make:seeder ArticlesTableSeeder

然后编辑databaes/migrations/seeds/ArticlesTableSeeder.php文件:填充50条数据useApp\Models\Article;//修改run方法Article::create里面的字段就是

//protected $fillable = ['username', 'email', 'ipAddress'];

public functionrun()

{//Let's truncate our existing records to start from scratch.

Article::truncate();$faker = \Faker\Factory::create();//And now, let's create a few articles in our database:

for ($i = 0; $i < 50; $i++) {

Article::create(['username' => $faker->name.str_random(5),

'email' => str_random(10).'@baidu.com',

'ipAddress' => '127.0.0.1',]);

}

}

运行填充器命令进行填充表里的数据就有了

php artisan db:seed --class=ArticlesTableSeeder

如果填充多张表的数据填充编辑:databaes/migrations/seeds/DatabaseSeeder.phppublic functionrun()

{$this->call(ArticlesTableSeeder::class);//填充articles

$this->call(InfoTableSeeder::class);//填充info

}//然后执行,php artisan db:seed

编辑ArticleController.phpEloquent操作可以参考https://learnku.com/articles/6356/laravel-eloquent-usage:

//查询所有

public functionindex()

{return Article::all();

}//根据uid

public function show($uid)

{//Article::where(['uid'=>$uid])->first();

return Article::where('uid',$uid)->first();

}

添加路由

Route::get('articles/{uid}', 'ArticleController@show');

一个简单接口功能就实现了

http://127.0.0.1:8081/api/articles/1

{"uid":1,"username":"Mr. Jamie Mohruwec7","email":"9gihcYEVzk@baidu.com","ipAddress":"127.0.0.1","created_at":"2018-11-02 07:13:26","updated_at":"2018-11-02 07:13:26"}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513136.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Chrome 96 又更新了 5 个巨巨巨好用的功能

作者 | 零一来源 | 前端印象‍‍‍‍‍‍‍大家好&#xff0c;收到了 Chrome 96 版本的更新推送&#xff0c;简单看了一下&#xff0c;还是更新了几个挺有趣的东西的&#xff0c;一起来看看到底都有啥~先下载 Chrome Beta 版本才能体验 Chrome 96 哈Chrome Beta我们顺便来给每个…

Android手机产线测试模块,基于Android平台智能手机可靠性生产测试模式的实现

摘要&#xff1a;随着通信技术的飞速发展,智能手机逐渐走进了普通大众的生活,未来它将成为人们获取信息的主要设备,这是一个不可阻挡的趋势.依托中国3G业务的发展,移动手机市场近几年来发展火爆全面智能化.但在我国手机市场上,国外知名品牌的市场份额在一半以上,国内品牌手机的…

编译优化 | LLVM代码生成技术详解及在数据库中的应用

简介&#xff1a; 作者&#xff1a;长别 1. 前言 随着IT基础设施的发展&#xff0c;现代的数据处理系统需要处理更多的数据、支持更为复杂的算法。数据量的增长和算法的复杂化&#xff0c;为数据分析系统带来了严峻的性能挑战。近年来&#xff0c;我们可以在数据库、大数据系…

低代码发展专访系列之二:两三年内会出现“现象级”低代码产品吗?

前言&#xff1a;2019年开始&#xff0c;低代码爆火。有人认为它是第四代编程语言&#xff0c;有人认为它是开发模式的颠覆&#xff0c;也有人认为是企业管理模式的变革……有很多声音&#xff0c;社区讨论很热烈。CSDN 随后展开低代码平台产品系列活动&#xff0c;包括低代码开…

mssql 数据库审计账户_SQLServer数据库审计功能入门之SQL Server审核 (SQL Server Audit)...

本文主要向大家介绍了SQLServer数据库审计功能入门之SQL Server审核&#xff0c;通过具体的内容向大家展现&#xff0c;希望对大家学习SQLServer数据库有所帮助。介绍Audit是SQL Server 2008之后才有的功能&#xff0c;它能告诉你“谁什么时候做了什么事情”。具体是指审核SQL …

为什么Spring仍然会是云原生时代最佳平台之一?

简介&#xff1a; 基于Java语言的Spring生态&#xff0c;还能否适应新的开发方式&#xff0c;比如Cloud Native、Serverless、Faas等&#xff0c;它还会是云原生时代的最佳平台的选择吗&#xff1f;本文将从5个角度来为你分析一下这个问题&#xff0c;分别是&#xff1a;Java和…

贾又福大象鸿蒙,奏乐!继续吹!库里又创记录,射进MVP榜单,众多名记变“库吹“...

库里本月已投进85记三分 打破哈登保持的NBA单月三分命中数纪录加上今天的7记三分&#xff0c;库里本月已经投进85记三分&#xff0c;创造了新的NBA单月(自然月)三分命中数纪录。勇士本月还有两场比赛。此前&#xff0c;哈登曾单月82记三分。在NBA历史单月三分球命中数前三榜单中…

opencv4 图像特征匹配_概述 | 全景图像拼接技术全解析

点击上方蓝字关注我们微信公众号&#xff1a;OpenCV学堂关注获取更多计算机视觉与深度学习知识前言图像/视频拼接的主要目的是为了解决相机视野(FOV-Field Of View)限制&#xff0c;生成更宽的FOV图像/视频场景。视频拼接在体育直播、全景显示、数字娱乐、视频处理中都被广泛应…

数字化让618有了洞悉消费者内心的“大脑”

简介&#xff1a; 阿里云数据中台已形成包括会员智能运营、全域天攻智投、GMV策略模拟等在内的近10套解决方案&#xff0c;围绕“人”“货”“场”三大零售行业要素&#xff0c;逐个击破品牌业务难点&#xff0c;记者了解到&#xff0c;过去一年&#xff0c;悦诗风吟、Benefit、…

赋能工业互联网融合发展 | 北京信息化和工业化融合服务联盟平台化设计专业委员会、中国仿真学会CAE仿真专业委员会成立

11月28日&#xff0c;由北京市经济和信息化局指导&#xff0c;北京信息化和工业化融合服务联盟与中国仿真学会共同主办&#xff0c;联盟平台化设计专业委员会、中国仿真学会CAE仿真专业委员会、国家数字化设计与制造创新中心北京中心、北京数字化设计与制造产业创新中心共同承办…

升级鸿蒙系统有没有翻车,被寄予厚望的华为鸿蒙系统,这次要翻车?原来并不是我们想的那样...

华为鸿蒙系统早在去年就已经被正式发布&#xff0c;但那时的人们对这个操作系统还不熟悉。但近期华为又在其发布会上发布了鸿蒙OS2.0&#xff0c;并表示到了2021年华为手机将全面使用鸿蒙2.0。这消息一出&#xff0c;不少华为用户忍不住想去尝尝鲜&#xff0c;纷纷都将系统更新…

PolarDB-X 2.0 全局 Binlog 和备份恢复能力解读

简介&#xff1a; PolarDB-X 2.0 针对数据孤岛问题提供了全局 Binlog 能力&#xff0c;该能力为下游生态提供了与 MySQL Binlog 完全一致的增量日志消费体验。针对数据损坏问题提供了实例级、表级、SQL 级和行级等不同粒度的数据恢复能力&#xff0c;包括一致性备份恢复、表回收…

友盟+《小程序用户增长白皮书》:从五个角度入手分析小程序数据

简介&#xff1a; 近日&#xff0c;国内领先的全域数据智能服务商——友盟&#xff0c;发布了《友盟U-APM 移动应用性能体验报告》。据悉&#xff0c;友盟于去年将原移动分析U-App错误分析模块正式升级为U-APM应用性能监控平台&#xff0c;经过近一年的观察&#xff0c;通过DEM…

双向板受力特点_双向板的受力特点与试验结果

长跨的挠度曲线弯曲最大处不在跨中而在离板边约21短跨长处。(2)加载过程中&#xff0c;在裂缝出现之前&#xff0c;双向板基本上处于弹性工作阶段。(3)四边简支的正方形或矩形双向板&#xff0c;当荷载作用时&#xff0c;板的四角有翘起的趋势&#xff0c;因此板传给四边支座的…

html提现页面模板,提现记录.html

&#xfeff;提现记录$axure.utils.getTransparentGifPath function() { return resources/images/transparent.gif; };$axure.utils.getOtherPath function() { return resources/Other.html; };$axure.utils.getReloadPath function() { return resources/reload.html; };…

有赞九周年,打造技术生态,与开发者一起投身新零售浪潮

编辑 | 宋慧 11月28日&#xff0c;在有赞九周年生态大会有赞云分会场上&#xff0c;有赞宣布全面升级“ONE战略”&#xff0c;将与生态内众多的品牌商、软件厂商&#xff0c;从“产品融合”&#xff0c;“销售联动”&#xff0c;“经验共享”和“资本合作”四个维度实一起共建“…

“控本焦虑”的工程企业 用钉钉宜搭找到了低成本数字化的“捷径”

简介&#xff1a; 上海致拓软件有限公司利用云钉低代码应用构建平台——钉钉宜搭为合安建筑快速、低成本地搭建了个性化的项目管理系统&#xff0c;着力帮助合安建筑解决业务在线场景&#xff0c;形成场景化的工程项目管理数字化解决方案。 一封由工程公司发给项目管理数字化实…

latex导数_Latex:导数【高中常用公式】

Latex&#xff1a;导数【高中常用公式】吴文中公式编辑器&#xff1a;Ⅰ) 像码字一样Latex&#xff0c;复杂公式轻松编辑&#xff1b; Ⅱ)大学、高中、初中、小学常用公式&#xff0c;一键模板。Note&#xff1a;① 点击链接&#xff0c;想怎么修改就怎么修改&#xff1b;② 复…

如何做好一场技术演讲?

简介&#xff1a; 据心理学调查&#xff0c;在人们感到最恐惧的事情里&#xff0c;死亡排名第二&#xff0c;而“公开演讲”排名第一&#xff01;那么作为一个演讲新人&#xff0c;为了可以不丢人的做好演讲&#xff0c;都需要做哪些准备呢&#xff1f; 作者 | 竹涧 来源 | 阿里…

layui弹出层html,layui-弹出层

1.//弹框中的表单用户名复选框2.layui.use(layer, function(){var layer layui.layer;layer.open({title: [title, text-align:center; background:#fff],type:1,area: [500px, 300px],content: $(#addform), //这里content是一个普通的String//offset: auto, //弹框位置btn: […