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 相关文章推荐
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
Jul 09 PHP
php生成随机数或者字符串的代码
Sep 05 PHP
php pcntl_fork和pcntl_fork 的用法
Apr 13 PHP
国外比较好的几个的Php开源建站平台小结
Apr 22 PHP
php设计模式 Command(命令模式)
Jun 26 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
php使用Jpgraph绘制简单X-Y坐标图的方法
Jun 10 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
Jul 01 PHP
Smarty变量用法详解
May 11 PHP
屏蔽PHP默认设置中的Notice警告的方法
May 20 PHP
php 算法之实现相对路径的实例
Oct 17 PHP
php微信公众号开发之校园图书馆
Oct 20 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执行速度全攻略(上)
2006/10/09 PHP
PHP 作用域解析运算符(::)
2010/07/27 PHP
PHP反射API示例分享
2016/10/08 PHP
php中字符串和整数比较的操作方法
2019/06/06 PHP
jquery tab插件精简版分享
2011/09/10 Javascript
div模拟滚动条效果示例代码
2013/10/16 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
jquery 显示*天*时*分*秒实现时间计时器
2014/05/07 Javascript
jQuery实现ajax调用WCF服务的方法(附带demo下载)
2015/12/04 Javascript
结合代码图文讲解JavaScript中的作用域与作用域链
2016/07/05 Javascript
微信小程序 toast 详解及实例代码
2016/11/09 Javascript
简单实现js无缝滚动效果
2017/02/05 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
2017/02/19 Javascript
从零开始学习Node.js系列教程五:服务器监听方法示例
2017/04/13 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
vue判断input输入内容全是空格的方法
2018/03/02 Javascript
在vue项目中使用md5加密的方法
2018/09/14 Javascript
pyramid配置session的方法教程
2013/11/27 Python
Python Socket实现简单TCP Server/client功能示例
2017/08/05 Python
python嵌套字典比较值与取值的实现示例
2017/11/03 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
python 去除二维数组/二维列表中的重复行方法
2019/01/23 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
2020/02/25 Python
tensorflow常用函数API介绍
2020/04/19 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
英国奢侈品概念店:Base Blu
2019/05/16 全球购物
.NET面试题:什么是反射
2016/09/30 面试题
高级人员简历的自我评价分享
2013/11/03 职场文书
思想汇报范文
2013/11/04 职场文书
部队党性分析材料
2014/02/16 职场文书
党员干部批评与自我批评反四风思想汇报
2014/09/21 职场文书
2015年小学开学寄语
2015/02/27 职场文书
Python如何配置环境变量详解
2021/05/18 Python
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python