Laravel 5框架学习之模型、控制器、视图基础流程


Posted in PHP onApril 08, 2015

添加路由

Route::get('artiles', 'ArticlesController@index');

创建控制器

 php artisan make:controller ArticlesController --plain

修改控制器

<?php namespace App\Http\Controllers;

use App\Article;
use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

class ArticlesController extends Controller {

 public function index() {
    $articles = Article::all();

    return $articles;
  }

}

可以在浏览器中看到返回的 JSON 结果,cool!

修改控制器,返回视图

public function index() {
    $articles = Article::all();

    return view('articles.index', compact('articles'));
  }

创建视图

@extends('layout')

@section('content')
  <h1>Articles</h1>

  @foreach($articles as $article)
    <article>
      <h2>{{$article->title}}</h2>

      <div class="body">{{$article->body}}</div>
    </article>
  @endforeach
@stop

浏览结果,COOL!!!!

显示单个文章

添加显示详细信息的路由

Route::get('articles/{id}', 'ArticlesController@show');

其中,{id} 是参数,表示要显示的文章的 id,修改控制器:

public function show($id) {
    $article = Article::find($id);

    //若果找不到文章
    if (is_null($article))
    {
      //生产环境 APP_DEBUG=false
      abort(404);
    }
    return view('articles.show', compact('article'));
  }

laravel 提供了更加方便的功能,修改控制器:

public function show($id) {
    $article = Article::findOrFail($id);

    return view('articles.show', compact('article'));
  }

It's cool.

新建视图

@extends('layout')

@section('content')
  <h1>{{$article->title}}</h1>

  <article>
    {{$article->body}}
  </article>
@stop

在浏览器中尝试访问:/articles/1 /articles/2

修改index视图

@extends('layout')

@section('content')
  <h1>Articles</h1>
  <hr/>
  @foreach($articles as $article)
    <article>
      <h2>
        {{--这种方式可以--}}
        <a href="/articles/{{$article->id}}">{{$article->title}}</a>
        {{--这种方式更加灵活,不限制路径--}}<br>
        <a href="{{action('ArticlesController@show', [$article->id])}}">{{$article->title}}</a>
        {{--还可以使用--}}<br>
        <a href="{{url('/articles', $article->id)}}">{{$article->title}}</a>
      </h2>

      <div class="body">{{$article->body}}</div>
    </article>
  @endforeach
@stop

以上所述就是本文的全部内容了,希望能够对大家学习Laravel5框架有所帮助。

PHP 相关文章推荐
用Zend Encode编写开发PHP程序
Oct 09 PHP
一贴学会PHP 新手入门教程
Aug 03 PHP
php XMLWriter类的简单示例代码(RSS输出)
Sep 30 PHP
PHP超级全局变量数组小结
Oct 04 PHP
php数组删除元素示例
Mar 21 PHP
php发送get、post请求的6种方法简明总结
Jul 08 PHP
教你如何开启shopnc b2b2c 伪静态
Oct 21 PHP
PHP中一些可以替代正则表达式函数的字符串操作函数
Nov 17 PHP
php中静态类与静态变量用法的区别分析
Jan 15 PHP
浅谈PHP接收POST数据方式
Jun 05 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
May 13 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
Oct 18 PHP
Laravel 5框架学习之Eloquent (laravel 的ORM)
Apr 08 #PHP
Laravel 5框架学习之数据库迁移(Migrations)
Apr 08 #PHP
Laravel 5框架学习之环境与配置
Apr 08 #PHP
Laravel 5框架学习之Blade 简介
Apr 08 #PHP
Laravel 5框架学习之向视图传送数据(进阶篇)
Apr 08 #PHP
Laravel 5框架学习之向视图传送数据
Apr 08 #PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 #PHP
You might like
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
PHP简单实现上一页下一页功能示例
2016/09/14 PHP
PHP使用preg_split和explode分割textarea存放内容的方法分析
2017/07/03 PHP
php实现简单的守护进程创建、开启与关闭操作
2019/08/13 PHP
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
JavaScript高级程序设计(第3版)学习笔记 概述
2012/10/11 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
js简单实现点击左右运动的方法
2015/04/10 Javascript
jQuery实现按钮只点击一次后就取消点击事件绑定的方法
2015/06/26 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
2017/02/10 Javascript
微信小程序 页面跳转及数据传递详解
2017/03/14 Javascript
layui.js实现的表单验证功能示例
2017/11/15 Javascript
vue引入js数字小键盘的实现代码
2018/05/14 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
element-ui表格数据转换的示例代码
2018/08/24 Javascript
axios取消请求的实践记录分享
2018/09/26 Javascript
详解element-ui日期时间选择器的日期格式化问题
2019/04/08 Javascript
vue下axios拦截器token刷新机制的实例代码
2020/01/17 Javascript
创建nuxt.js项目流程图解
2020/03/13 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
JS实现前端动态分页码代码实例
2020/06/02 Javascript
python的exec、eval使用分析
2017/12/11 Python
Python selenium模拟手动操作实现无人值守刷积分功能
2020/05/13 Python
python实现文法左递归的消除方法
2020/05/22 Python
Python自动化测试基础必备知识点总结
2021/02/07 Python
详解前端HTML5几种存储方式的总结
2016/12/27 HTML / CSS
英国银首饰公司:e&e Jewellery
2021/02/11 全球购物
房地产员工找工作的自我评价
2013/11/15 职场文书
2014领导班子四风问题对照检查材料思想汇报
2014/09/21 职场文书
先进教师个人总结
2015/02/11 职场文书
沂蒙六姐妹观后感
2015/06/08 职场文书
如何用六步教会你使用python爬虫爬取数据
2022/04/06 Python