Laravel5.1接口开发【1】
来源:互联网 发布:c语言实验报告流程图 编辑:程序博客网 时间:2024/06/05 17:10
Laravel5.1接口开发
很久没有写博客了,现在是是时候重拾以前写博客的习惯。
最近需要给公司和安卓和苹果部门提供接口,这是我第一次写接口,所以要将这整个过程记录下来。
创建Api项目
首先是下载Laravel项目,因为我之前已经给PHP安装过composer,所以可以直接用我们的composer来实现这个安装过程。
composer create-project laravel/laravel laravel-api 5.1.*
这样就可以在我们的当前执行目录下面创建一个名为laravel-api的项目,版本为5.1。
生成MMC
创建了项目之后,接下来我们就创建我们的数据库,这时候,可以使用我们的php artisan 来快速的创建数据库。
php artisan make:migration create_lessons_table --create=lessons
这样我们就在Laravel项目中的migration文件夹下创建了一个create_lessons_table的migration文件(create=“”“”中填入的是表的名称)
接着我们在创建一个对应的Model和Controller php artisan make:model Lesson
php artisan make:controller LessonsController
填充数据
这时候我们开始设置lessons数据表的字段。打开migration下面的新生成的create_lessons_table文件,添加一个title字段,添加一个content字段,和一个state字段。 $table->string('title');
$table->text('content');
$table->boolean('state');
然后执行migrate,生成lessons表;
接下来填充测试数据。填充数据可以使用Laravel自带的模型工厂;
打开database里面的factories文件夹里面的ModelFactory模型,
复制最上面一行,然后定义生成规则
$factory->define(App\Article::class, function (Faker\Generator $faker) { return [ 'title' => $faker->sentence, 'content' => $faker->realText(200), 'state' => $faker->boolean, ];});
然后,继续使用我们artisan 这回使用tinker命令,直接生成几条测试数据,
在生成测试数据之前,我们需要修改一下我们model Article表,添加一行 protected $table = 'article'
指定Article model使用数据的article表
- 打开命令行
php artisan tinker
namespace App;
factory(Article::class,100)->create();
这是就自动生成100条数据;
编写路由和控制地
生成数据后,这时候就是在浏览器中访问到我们的数据,
首先在路由其中定义我们的访问路由
定义路由
一般来说都有一个列表页面和一个详情页面,列表页是全部文章,打开route.php文件,因为我们是给提供API接口,通常都会使用prefix来增加一个前缀,同时写上版本号v1,v2,v3….route.php
文件Route::group(['prefix'=>'api/v1'],function(){ Route::get('/','ArticlesController@index'); Route::get('/articles/{id}','ArticlesController@show'); });
编写Controller
详情页是单个文章,Model::all()可以将模型所有的数据全部取出,return 可以让取出的数据返回一个json格式的数据。
ArticlesController.php
文件//列表页面 public function index() { return Article::all(); } //详情页面 $id 为文章的id public function show($id) { $article = Article::findOrFail($id); return $article; }
这个时候访问我们的
/api/v1
和/api/v1/articles/1
就可以查看到json格式的文章信息。
- Laravel5.1接口开发【1】
- laravel5.1 项目开发常用接口
- laravel5.0 升级到 laravel5.1
- laravel5教程【1】:安装
- Laravel5.1快速查询
- Cloud9 安装laravel5.1
- laravel5.1 配置相关
- laravel5.1 日志相关
- Laravel5.1教程 前言
- laravel5.1 缓存
- laravel5-1 Study notes
- laravel5.1权限模块
- laravel5.1 源码阅读
- laravel5.1启动详解
- Laravel5.1-邮件发送
- Laravel5.1 模型--删除
- laravel5.1部署
- laravel5.1学习手册[一]基本开发环境配置
- 用Jquery动态获取当地时间
- 防止iframe调用
- 网站搭建基本流程
- u盘文件变快捷方式(1KB病毒)的完美解决方法
- EventBus3.0使用总结(二)EventBus的线程模式
- Laravel5.1接口开发【1】
- C++递归算法之2的幂次方表示
- NSURLSession简单使用(日后补充)
- Angularjs中的拦截器
- 如何在Mac 终端升级ruby版本
- WBS工作分解结构示例分析
- java第一章_运算符_逻辑运算符
- Linux 文本查grep
- select/poll/epoll事件驱动