实现简单blog展示_html/css_WEB-ITnose
创建一个index主页列出所有文章
生成路由
app/Http/routes.php
Route::get('/articles','ArticlesController@index');
生成一个controller
php artisan make:controller ArticlesController
namespace App\Http\Controllers;use App\Articles; //当你使用Articles这个model的时候,phpstorme会帮你默认导入这个类use Illuminate\Http\Request;use App\Http\Requests;class ArticlesController extends Controller{ // public function index(){ //因为路由里面我们使用了ArticlesController@index,所以这里是index方法 $articles = Articles::all(); //这里需要注意的是这个Articles是我们创建的那个Articles的model,在phpstorme会有提示,这里的all方法是返回这个model查询到的所有数据,这些数据是提前输入好的 return $articles; }}
访问localhost:8000/articles会出现以下内容,laravel会默认返回json格式的数据
本页JSON数据由FeHelper进行自动格式化,若有任何问题,点击这里提交 意见反馈[{"id": 1,"title": "title","content": "content","publish_at": "2016-05-14 18:04:44","created_at": "2016-05-14 18:04:48","updated_at": "2016-05-14 18:04:48"},{"id": 2,"title": "title2","content": "content2","publish_at": "2016-05-15 04:24:48","created_at": "2016-05-14 18:07:42","updated_at": "2016-05-14 18:07:42"},{"id": 3,"title": "second title","content": "second content","publish_at": "2016-05-14 18:15:38","created_at": "2016-05-14 18:15:38","updated_at": "2016-05-14 18:15:38"}]
运用已有的blade知识,配置一个layout
例如
resources/views/layout/app.blade.phplayout只是一个概念,这个文件主要是为了创造一个模板容器,用来处理那些可以复用的代码,例如一些html的head,body标签
< !DOCTYPE html><html><head> <title>Laravel</title> <!-- 新 Bootstrap 核心 CSS 文件 --> <link rel="stylesheet" href="//cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css"/></head><body> <div class="container"> @yield('content') </div> @yield(('footer'))</body></html>
创建刚才控制器指定的那个blade文件
resources/views/articles/index.blade.php
@extends('layout.app')@section('content') <h1 id="hello">hello</h1> <hr /> @foreach($articles as $article) //循环输出 <h2 id="article-title">{{$article->title}}</h2> <article> <div> {{$article->content}} </div> </article> @endforeach@stop
创建一个文章页,列出单个文章
单个文章,需要有文章id在url里面区分,所以特意建立了一个新的路由和一个新的controller方法show
Route::get('/articles/{id}','ArticlesController@show'); {id}传入变量参数,用大括号来标识,传入变量到controller的show方法
app/Http/Controllers/ArticlesController.php
class ArticlesController extends Controller{ // public function index(){ $articles = Articles::all();// return $articles; return view('articles.index',compact('articles')); } public function show($id){ //获取从路由传入的$id变量 $article = Articles::find($id); //使用laravel提供的find方法查询数据库// return $articles; return view('articles.show',compact('article')); }}
resources/views/articles/show.blade.php
@extends('layout.app')@section('content') <h1 id="hello">hello</h1> <hr /> @foreach($articles as $article) {{--<h2 id="a-href-articles-article-id-article-title-a"><a href="/articles/{{$article->id}}">{{$article->title}}</a></h2>--}}{{-- <h2 id="a-href-url-articles-article-id-article-title-a"><a href="{{url('articles',$article->id)}}">{{$article->title}}</a></h2>--}} <h2 id="a-href-action-ArticlesController-show-article-id-article-title-a"><a href="{{action('ArticlesController@show',[$article->id])}}">{{$article->title}}</a></h2> //这里有三种方法来传递变url量到blade中,第一种是直接写的,第二种是通过url方法,使用的路由方法,第三种是通过action方法,使用的是controller方式 <article> <div> {{$article->content}} </div> </article> @endforeach@stop
本文由 PeterYuan 创作,采用 署名-非商业性使用 2.5 中国大陆 进行许可。 转载、引用前需联系作者,并署名作者且注明文章出处。神一样的少年 » 实现简单blog展示(主要使用到Eloquent和Controller的结合)

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

公众号网页更新缓存,这玩意儿,说简单也简单,说复杂也够你喝一壶的。你辛辛苦苦更新了公众号文章,结果用户打开还是老版本,这滋味,谁受得了?这篇文章,咱就来扒一扒这背后的弯弯绕绕,以及如何优雅地解决这个问题。读完之后,你就能轻松应对各种缓存难题,让你的用户始终体验到最新鲜的内容。先说点基础的。网页缓存,说白了就是浏览器或者服务器为了提高访问速度,把一些静态资源(比如图片、CSS、JS)或者页面内容存储起来。下次访问时,直接从缓存里取,不用再重新下载,速度自然快。但这玩意儿,也是个双刃剑。新版本上线,

本文讨论了使用HTML5表单验证属性,例如必需的,图案,最小,最大和长度限制,以直接在浏览器中验证用户输入。

本文展示了使用CSS为网页中添加有效的PNG边框。 它认为,与JavaScript或库相比,CSS提供了出色的性能,详细介绍了如何调整边界宽度,样式和颜色以获得微妙或突出的效果

本文讨论了html&lt; datalist&gt;元素,通过提供自动完整建议,改善用户体验并减少错误来增强表格。Character计数:159

本文讨论了HTML&lt; Progress&gt;元素,其目的,样式和与&lt; meter&gt;元素。主要重点是使用&lt; progress&gt;为了完成任务和LT;仪表&gt;对于stati

本文解释了HTML5&lt; time&gt;语义日期/时间表示的元素。 它强调了DateTime属性对机器可读性(ISO 8601格式)的重要性,并在人类可读文本旁边,增强Accessibilit

本文讨论了HTML&lt; meter&gt;元素,用于在一个范围内显示标量或分数值及其在Web开发中的常见应用。它区分了&lt; meter&gt;从&lt; progress&gt;和前
