最近学习了laravel,先简单谈谈学习的感受吧

刚开始一周多一点的时间先把laravel的开发文档看了一遍,,感觉刚开始接触时的感觉laravel的目录与thinkphp又不一样,它们的渲染模板的方式也不一样,模型的功能又比thinkphp的强大了许多,但是最厉害的地方的是它支持composer安装许多的模块,简单方便。在laravel的文档中,学到了门面(接口)和契约(接口),还知道了中间件,csrf保护和blade视图模板及laravel验证(过滤进入应用的 HTTP 请求提供了一套便利的机制)

在学习完laravel5.3之后,自己写了个个人博客,写的时候用到的技术也不多,主要原因是:1.练练手,2.服务器一直空闲着

在写的时候遇到了一些坑:

1、laravel的php与前台交互:

注意:这些都没有定义路由名称,如果使用 as 定义了路由名称的话,可以使用route()函数来代替url函数

(1)表单:
例:

前台表单:

向定义路由为search_find_blogs  的方法中提交数据:

<form action="{{url('search_find_blogs')}}" method="post">
{{csrf_field()}}
<input required="required" type="text" name="blog_name_search" value="Search Blog By name" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Search Blog By name';}">
<input type="submit" value="">
</form>

这个后台处理过后就得通过改变向前台渲染的参数来响应前台

(2)js的ajax,向路由为

例:

function post_form(operate){
$.post("{{url('admin_link_operate')}}",{_token:"{{csrf_token()}}",links_id:get_links_id(),operate:operate},function(data){
alert(data);
location.reload();
});
}

这样方法台只需要返回数据就前台就可以直接接收到了

2.利用js向后台提交文件

表单:

<form id="{{$album->album_id}}album_form">
{{ csrf_field() }}

<input type="file" id="{{$album->album_id}}album_cover" class="btn btn-warning" disabled="true" name="album_cover">

</form>

js:

var formData = new FormData($('#'+album_id+'album_form')[0]);
$(this).attr('value','编辑');
$.ajax({
url: "{{url('admin_album_edit')}}",  
type: 'POST',  
data: formData,
//设置同步方式 
async: true,
//不会从浏览器缓存中加载信息  
cache: false,  
contentType: false,  
processData: false,
success: function(d){
alert(d);
location.reload();
}  
});

php还是用$request->file('file_name')来获得文件

3.

如果使用laravel5.3的模型的自动维护时间,,数据库的时间存储为时间戳timestamp或datetime类型,,如果存成int类型,则会出错

4.在blade模板中如果遇到解析不正确的话可以使用 {{ }} 或{!! !!}

5.

在laravel中如果出现了向后台提交数据不对的情况,一定要先检查是否向后台提交了 _token':'{{csrf_token()
 
6.

上传文件的时候,在form表单上一定要加上enctype="multipart/form-data"属性,,要不然文件传不过去
 
 
7.

在form表单提交checkbox时,,要将其name上加上 [],要不如果提交多个的话,,只能收到最后一个
 

laravel初次学习总结及一些细节的更多相关文章

  1. 初次学习asp.net core的心得

    初次学习Asp.Net Core方面的东西,虽然研究的还不是很深,今天主要是学习了一下Asp.Net Core WebAPI项目的使用,发现与Asp.Net WebAPI项目还是有很多不同.不同点包含 ...

  2. Laravel用户认证系统的实现细节

    原文地址:http://www.php.cn/php-weizijiaocheng-406076.html 这篇文章主要介绍了关于Laravel用户认证系统的实现细节,有着一定的参考价值,现在分享给大 ...

  3. laravel的学习感受

    学习laravel也有一段时间了自己感觉还是不怎么难就是自己的代码不熟悉所以很多的不怎么会.

  4. laravel安装学习步骤

    在看知乎比较php框架的优劣的时候提到为什么laravel这么好国内用的少,还有就是yii2,有人提到原因就是composer在国内无法使用.这制约了使用composer进行包管理的框架在国内的传播和 ...

  5. nodejs 初次链接 mongodb 的详细细节

    时间  2016-06-2613:05:16 在前端的学习也有一段时间了,学习了html,css,javascript,jqery,ajax,php,mysql,学习了这些,了解了一些皮毛,也没有什么 ...

  6. laravel的学习历程

    首要,表明态度:PHP是世界上最佳的言语.(梗) laravel说是php将来,形似不假. 最开端触摸的是thinkphp,格外喜爱她的分层,文档格外完全,阅读起来没任何妨碍. 比较laravel,我 ...

  7. 【C++】初次学习C++指针时的一些易混或疑惑的地方

    C++中的指针是一个比较复杂的知识概念,最近我有在学习这一方面的知识,就借此文章记录一下在学习时容易产生的混淆.本人初次发技术类的分享,可能会有纰漏,欢迎诸位指正^_^! 1.*在两种语境下的含义 先 ...

  8. 初次学习shader

    Shader "Custom/Diffuse Texture" { //在shader中的位置 Properties { //着色器的属性 _MainTex ("Base ...

  9. laravel框架学习

    在聊技术之前,我们首先谈谈研究生的生活现状.进入到研究生忙碌的生活中,研究生是这么一个群体,外界对研究生的爱称是"研究僧",为什么我自己会觉得会是爱称.因为研究僧说的是研究生对自己 ...

随机推荐

  1. FLV格式详解

    Overview Flash Video(简称FLV),是一种流行的网络格式.目前国内外大部分视频分享网站都是采用的这种格式. File Structure 从整个文件上开看,FLV是由The FLV ...

  2. 深入React事件系统(React点击空白部分隐藏弹出层;React阻止事件冒泡失效)

    只关注括号内问题的同学,可直接跳转到蓝字部分.(标题起的有点大,其实只讨论一个问题) 两个在React组件上绑定的事件,产生冲突后,使用e.stopPropagation(),阻止冒泡,即可防止事件冲 ...

  3. 表单验证--通过原生js模仿ajax的异步交互

    今天给大家带来个福利,我也是刚刚学习的很实用的一个东西,通过原生js模仿ajax的异步交互. 我的博客只是给那些新手看的大神勿喷,写的不好可留言,请指出. 因为当初自己学的时候一个问题不会找人问,知道 ...

  4. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第六章:管理产品图片——多对多关系(上篇)

    在这章中,我们将学习如何创建一个管理图片的新实体,如何使用HTML表单上传图片文件,并使用多对多关系将它们和产品关联起来,如何将图片存储在文件系统中.在这章中,我们还会学习更加复杂的异常处理,如何向模 ...

  5. HDU5475

    An easy problem Time Limit: 8000/5000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)T ...

  6. CodeForces 451B

    Sort the Array Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Sub ...

  7. 一起学 Java(四) File、Try 、序列化、MySQL、Socket

    一.Java 流(Stream).文件(File)和IO Java.io 包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io 包中的流支持很多种格式,比如:基 ...

  8. 警告1909。无法创建快捷方式VMware Workstation Pro.Ink。解决方法(附 VMware_workstation 12的安装方法)

    电脑之前装过VMware 10,很长时间没用就卸载了,也没有在意卸载的干不干净,直到最近需要用Linux系统,重新安装了VMware 12,就出现下面这样的情况: 警告1909.无法创建快捷方式VMw ...

  9. Vue框架Element的事件传递broadcast和dispatch方法分析

    前言 最近在学习饿了么的Vue前端框架Element,发现其源码中大量使用了$broadcast和$dispatch方法,而Element使用的是Vue2.0版本,众所周知在Vue 1.0升级到2.0 ...

  10. ios 动画学习的套路 (二)

    有它们俩你就够了! 说明:下面有些概念我说的不怎么详细,网上实在是太多了,说了我觉得也意义不大了!但链接都给大家了,可以自己去看,重点梳理学习写动画的一个过程和一些好的博客! (一) 说说这两个三方库 ...