.net转php laraval框架学习系列(四) 项目实战---View
laravel的参考文档中view的讲解有些简单。
在实际项目开发中view的灵活性其实是非常大。
首先来看看laravel中的布局页 和asp.net mvc中有什么不同
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!--这里相当于asp.net mvc 中的一个@section('title',false)-->
@section('title') <title>{{{$title}}}</title> <!-- using {{$title}} is bad here eg:</title><script>alert('hello')</script> --> <!--这里{{{X}}}与{{}}的区别在与前者会转码,后者不转码-->
@show
<meta content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' name='viewport'>
{{ HTML::style('vendor/bootstrap/dist/css/bootstrap.css') }}
@section('style')
@show
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
</head>
<body class="skin-blue">
<!-- 部分视图 -->
@include('shared.header')
<div class="container ">
{{$main}}
</div><!-- ./wrapper -->
{{ HTML::script('vendor/jquery/dist/jquery.js') }}
{{ HTML::script('vendor/bootstrap/dist/js/bootstrap.js') }}
@section('script')
@show
</body>
</html>
在看首页显示列表的post.home的代码:
<div class="row">
<div class="col-xs-12 col-sm-6 col-md-8">
{{$content}}
</div>
<div class="col-xs-6 col-md-4"> <!--这里这个部分视图是一个全局都可以引用的,该部分视图在上一章的route.php的视图合成器-->
@include('shared.sidebar')
</div>
</div>
还有post.index的代码 post.index回作为一个子视图将替换post.home中的{{$content}}
@if(!empty($notFound))
<p>Sorry nothing found for your query!</p>
@else
@foreach($posts as $post)
<article class="post">
<header class="post-header">
<h4 class="post-title">
{{link_to_route('post.show',$post->title,$post->id)}}
<div class="pull-right">
<span class="text-warning small">{{explode(' ',$post->created_at)[0]}}</span>
<span class="small">{{$post->comment_count}} comments </span>
</div>
</h4>
</header>
<div class="post-content">
<p>{{$post->read_more.' ...'}}</p>
<div >{{link_to_route('post.show','Read full article',$post->id)}}</div>
</div>
<footer class="post-footer">
<hr>
</footer>
</article>
@endforeach
{{$posts->links()}}//这里显示分页。
@endif
laravel框架视图这部分有很多其他组件,本章代码是没有引用其他组件的写法。
简单的demo是完成了,以下是完整代码。
http://pan.baidu.com/s/1ntzDsyH
接下来会研究一些laravel中常用到的组件,并应用到demo项目中。
.net转php laraval框架学习系列(四) 项目实战---View的更多相关文章
- .net转php laraval框架学习系列(二)项目实战---Models
上一篇已经介绍开发环境的搭建,如果有问题可以在文章后留言. 这篇将从项目实战开发,一步一步了解laravel框架. 在开发mvc项目时,models都是第一步. 下面就从建模开始. 实体关系图 由于不 ...
- .net转php laraval框架学习系列(一) 环境搭建
之前也没写过什么博客,可能文章结构比较混乱,想到那写到哪. 主要是把自己学习中的经验写下来. 为什么选择laravel框架,是因为laravel框架目前是Php最流行的框架,深入研究后发现和asp.n ...
- .net转php laraval框架学习系列(三)项目实战---Route&Controllers
本章来学习laravel的路由 一个简单的路由列子 Route::get('/', function() { return 'Hello World'; }); 路由的写法和Node的风格很相似.上面 ...
- scrapy爬虫学习系列四:portia的学习入门
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...
- DocX开源WORD操作组件的学习系列四
DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...
- .net reactor 学习系列(四)---.net reactor应用场景
原文:.net reactor 学习系列(四)---.net reactor应用场景 前面已经学习了.net reactor一些基础知识,现在准备学习下实际的应用场景,只是简单的保护和 ...
- 4.VUE前端框架学习记录四:Vue组件化编码2
VUE前端框架学习记录四:Vue组件化编码2文字信息没办法描述清楚,主要看编码Demo里面,有附带完整的代码下载地址,有需要的同学到脑图里面自取.脑图地址http://naotu.baidu.com/ ...
- web前端Vue+Django rest framework 框架 生鲜电商项目实战✍✍✍
web前端Vue+Django rest framework 框架 生鲜电商项目实战 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频 ...
- web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 ☝☝☝
web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习 ...
随机推荐
- TextView 超链接点击跳转到下一个Activity
1:activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/androi ...
- jboss部署应用
简单的部署应用. 第一种方法是直接写JSP代码,然后放到指定的WAR文件夹中. 第二种,是同时META-INF下的application.xml文件,然后用JAR -CF编成WAR,再集合JSP形成E ...
- C#控制生成图片的大小
private void button1_Click(object sender, EventArgs e) { using (Bitmap bitmap = new Bitmap("d:\ ...
- Linux下根据进程的名字杀死进程
以前是写了一个bash,通过ps,grep 和awk配合搜索PID再kill掉进程.果然以前傻,不知道解决问题之前先google,原来直接就有相关的pkill -f "process_nam ...
- LA 4794 - Sharing Chocolate dp
题意 有一块\(x*y\)的巧克力,问能否恰好分成n块,每块个数如下 输入格式 n x y a1 a2 a3 ... an 首先\(x \times y 必然要等于 \sum\limits_{i=1} ...
- 关于本学期西南交通大学ACM-ICPC校集训队 训练计划(Beta 1.0)
在第十周新秀杯之后,从第十一周起的训练计划如下: 1.十一周的周一至周五进行ACM校集训队申请.申请方式从2014年11月17日0:00开始,发送申请者的姓名.学号.专业.电话.QQ以及大学(针对大一 ...
- hdu 1402 A * B Problem Plus FFT
/* hdu 1402 A * B Problem Plus FFT 这是我的第二道FFT的题 第一题是完全照着别人的代码敲出来的,也不明白是什么意思 这个代码是在前一题的基础上改的 做完这个题,我才 ...
- sqlserver2012关于allwayson和复制结合起来的做法以及需要注意的问题
allwayson的自动故障转移需要它对应的windows故障转移群集有仲裁设置,这样相当于三台以上的服务器做allwayson才比较合适 1.首先安装sqlserver的时候需要勾选上“复制” ...
- 【转】Eclipse中创建并运行Servlet项目
最近看了写http协议的学习资料,因此想要实现下andriod平台和服务器通信,那就servlet吧,哎哟,还不错哦!顺便说下,我这个servlet服务是想获得用户名和密码进行校验,然后反给客户端状态 ...
- jQuery效果---隐藏与显示
隐藏与显示 index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...