Laravel 5 基础(八)- 模型、控制器、视图基础流程
2024-09-02 01:49:40
- 添加路由
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
最新文章
- WebSocket///////////////////////z
- git stash -u 添加新文件
- Ubuntu安装dos2unix工具
- javascript 操作 excel 全攻略
- LeetCode 344
- Ruby自学笔记(五)— 条件判断
- IntelliJ IDEA 12 创建Web项目 教程 超详细版
- dfs.datanode.max.transfer.threads
- CentOS 7 + MySql 中文乱码解决方案
- ios开发之--tableview刷新某一个区和某一行
- 『科学计算』科学绘图库matplotlib练习
- php 的多进程实践
- KDE下安装fcitx后终端不能输入中文
- gzip和zipfile模块
- Bootstrap table后端分页(ssm版)
- 20155337 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
- codechef January Lunchtime 2017简要题解
- git 错误 RPC
- Android自己主动化构建之Ant多渠道打包实践(下)
- 毕业设计 python opencv实现车牌识别 矩形矫正
热门文章
- PL/SQL常用设置 可看引用位置更清晰直观 引自:http://blog.csdn.net/xiaoqforever/article/details/27695569
- jBox 弹出窗口中焦点设置问题
- http是什么?
- POJ1979 Red and Black (简单DFS)
- 003.ASP.NET MVC集中管理Session
- Flex4+BlazeDS+JAVA+MySql 构建J2EE工程 对用户信息进行管理实例
- jQuery中 wrap() wrapAll() 与 wrapInner()的区别
- oracle的sqlldr并行导入表不要加索引
- kickstrat
- DEDE的data目录名称修改方法