Laravel之路由 Route::get/post/any、路由参数、过滤器、命名、子域名、前缀、与模型绑定、抛出 404 错误、控制器

基本路由应用中的大多数路都会定义在app/routes.php文件中。最简单的Laravel路由由URI和闭包回调函数组成。基本GET路由代码如下:Route::get('/',function(){   return'HelloWorld';});基本POST路由代码如下:Route::post('foo/bar',function(){   return'HelloWorld';});注册一个可以响应任何HTTP动作的路由代码如下:Route::any('foo',function(){   return'HelloWorld';});仅支持HTTPS的路由代码如下:Route::get('foo',array('https',function(){   return'MustbeoverHTTPS';}));实际开发中经常需要根据路由生成URL,URL::to方法就可以满足此需求:$url=URL::to('foo');路由参数代码如下:Route::get('...

laravel 多个项目共享SESSION

只讨论一个域下的项目。eg:a.xxx.com和b.xxx.com来共享session如果多个laravel项目共享SESSION要满足以下条件:   SESSION可以存放在一个地方,eg:共用一个reids   用户表为连接同一个数据库的用户表   需要在同一域下操作步骤:以将session存放到redis中为例:1.安装redis库composerrequirepredis/predis2.修改laravel框架的配置。3.修改.env文件SESSION_DRIVER=redisSESSION_DOMAIN=.xxx.com//这里自定义自己的域名注意前面有个.将两个项目中APP_KEY的值改一致4.这样应该就可以了~修改app/config/database.phpredis中多加一个session配置'redis'=>['client'=>'predis','default'=>['host'=>env('REDIS_HOST','127.0.0.1'),'pas...

laravel 共享session问题总结

我现在有一个A系统已经上线了,但是要开始研发另外一个功能,我打算把这个功能独立成一个B系统出来,放在其他域名下面,打算在这个A系统登录后,里面一个连接跳转到B系统,看到一些资料说用到共享Session,SESSION_DOMAIN这个东西DOC里面好像没有详细的介绍过,有没有一些资料可以参考下,感谢!主域名不一样无法获取到而且Session还要共享可以参考这篇文章:https://laravelacademy.org/post/9771.html不同系统共享Session要求根域名一致比如a.example.com和b.example.com然后将SESSION_DOMAIN设置为.example.com这样两个系统就可以从Cookie中读取到同一份sessionid了 参考:https://laravelacademy.org/index.php/discussion/871...

laravel5 报错419,form 添加crrf_field 后让然失败,本地环境配置问题

这个是因为laravel自带CSRF验证的问题解决方法方法一:去关掉laravel的csrf验证,但这个人不建议,方法也不写出来了。方法二:把该接口写到api.php上就好了方法三:首先在页面加上<metaname="csrf-token"content="{{csrf_token()}}"/>然后请求的在header里面加上'X-CSRF-TOKEN':$('meta[name="csrf-token"]').attr('content')就ok了方法四:页面上加上代码{{csrf_field()}},如果是form表单提交的话直接加上就ok了,不是form的话ajax请求的时候写到请求参数里增加参数_token并获取{{csrf_field()}}的值,然后请求就好了(常用)varname=$('#name').val();$.ajax({type:'POST',url:"{{route('rule.add')}}",dataType:'json',data:{'name':name,'_token':'{{csrf_token()}}'},success:functi...

如何正确使用 Composer 安装 Laravel 扩展包

正确使用Composer安装Laravel扩展包:简单解释composerinstall如有composer.lock文件,直接安装,否则从composer.json安装最新扩展包和依赖;composerupdate从composer.json安装最新扩展包和依赖;composerupdatevendor/package从composer.json或者对应包的配置,并更新到最新;composerrequirenew/package添加安装new/package,可以指定版本,如:composerrequirenew/package~2.5.流程接下来介绍几个日常生产的流程,来方便加深大家的理解。流程一:新项目流程创建composer.json并添加依赖到的扩展包;运行composerinstall安装扩展包并生成composer.lock提交composer.lock到代码版本控制器中,如:git;流程二:项目协作者安装现有项目克隆项目后,根目录下直接运行composerinstall从composer.lock中安装指定版本的扩展包以及其依赖;此流程适用于生产环境代码的部署。流程三:...

Laravel 从入门到精通系列教程

转载;https://laravelacademy.org/laravel-tutorial-5_7适用于Laravel5.5、5.6、5.7版本,本系列教程将围绕一个LTS版本,然后采取增量更新方式,随着Laravel版本的升级不断进行更新,直到Laravel框架不再维护。比如这个教程是在Laravel5.5教程的基础上,涵盖5.6、5.7版本的功能。有人会问这个教程和官方文档有什么区别,文档相对晦涩,很多地方会让新手云里雾里,且各章节相互独立、松散,你可以将本系列教程看作一本针对Laravel的、开放式的、持续更新的、以实例驱动的、深入浅出的非官方实战指南。本系列教程源码存放在Github上:https://github.com/nonfu/laravel-tutorial-code更新频率:为保证教程质量,每周一、三、五更新。一、预备篇PHP知识储备Composer命名空间Trait 闭包和匿名函数搭建开发环境基于Vagrant+VirtualBox构建本地开发环境:Homestead(适用于全平台)(Windows平台安装还可以参考这篇教程)基于Docker构建本地开...

laravel报404错误与NGINX报404错误区别

 nginx自己配置的404页面 和laravel配置的404页面;如果报了404 ;执行laravel的404页面; 那这个404页面对nginx来说意味着什么  laravel 路由和页面找不到会报404; nginx是 木有这个地址报404; 根据你的nginx配置如果请求的是静态文件,那么nginx会去找,文件不存在时,nginx会返回404,这个404就是nginx报的。如果请求的一个路径,根据你的配置,会转发给laravel的index.php,index.php是存在的,所以nginx不会报404。但是这个路径如果在laravel中没找到对应的路由,那么laravel就会显示404,这个404就是laravel的。...
代码星球 代码星球·2020-11-21

Laravel大型项目系列教程(五)之文章和标签管理

本节教程将大概完成文章和标签管理以及标签关联。1.文章管理首先创建管理后台文章列表视图:$phpartisangenerate:viewadmin.articles.list 修改views/admin/articles/list.blade.php:@extends('_layouts.default')@section('main')<divclass="am-gam-g-fixedblog-g-fixed"><divclass="am-u-sm-12"><tableclass="am-tableam-table-hoveram-table-striped"><thead><tr><th>Title</th><th>Tags</th><th>Author</th><th>Managment</th></tr></thead><tbody>@foreach($articlesas$ar...

Laravel 5.4 数据库迁移一次之后就不起作用!

https://segmentfault.com/q/1010000010806351我在命令行中生成了一个新的迁移脚本:当我执行命令:phpartisanmigrate时显示迁移成功,并且在数据库中已经有了这些表:我现在需要对这张表中的某个字段进行改名,所以我又生成了一个迁移,在里面写上:去数据库看更新成功,可是如果我现在再改的话,比如把title2再改回title直接在这个文件中改,再执行迁移命令,出现这个提示:好像没有走这步代码。请问什么不能改了,难道还要再创建一个迁移脚本吗?改一次创建一个肯定不现实 解答:是这样的,数据库有张migrate表,里面记录了你每次执行的migrate迁移文件,你把feedback表的字段title改为title2,migrate表已经记录了这个迁移文件,比如你把title2再改回title,此时是不行的。做法:1执行phpartisanmigrate:rollback回滚上一步操作,回滚的依据是down()方法里跟up方法相反的操作,比如up是新增一个字段,down里就是删除这个字段,此时再把up方法里title2改回title,phpa...

laravel 字段映射问题,表单中提交字段与数据表中字段不一致

在遇到提交表单时,表单中的name属性与数据表中的字段不一致,报错,解决方法:   参考1:提交表单的时候,表单的name属性和数据表字段名称是一样的,这样有什么不妥么?你数据库的信息给前端透露得越多就越不安全,相对来说。参考2:https://segmentfault.com/q/1010000011092875   ...

Laravel 框架集成 UEditor 编辑器的方法

㈠.背景   在项目开发的过程中,免不了使用修改功能,而富文本编辑器是极为方便的一种推荐,当然,个人认为MarkDown更为简单,但是感觉暂时只适合程序猿   此文介绍如何在Laravel5.5框架中集成使用富文本编辑器UEditorps:其实编辑器只是一个工具,举一反三可以用在各种代码语言或框架中㈡.探讨   通过网上求知,发现主要有两种方法实现①.第一种是使用composer进行安装,可推荐参考文章Laravel-u-editor,个人试过,无法上传图片…②.第二种是到UEditor官方下载源包自行配置(下文主要为此操作)ps:[如果有哪位能够成功实现第一种方案,请告诉鄙人一下,万分感谢!]㈢.操作步骤❶.下载对应的源码包   可点击进入下载地址,本人下载的是最新PHP(UTF-8)版本❷.放置在Public目录下   将解压后的文件夹,放置在Public目录下,本人只是将文件夹名字改动了一下.❸.前端文件配置  ...

laravel获取当前认证用户登录

可以通过Auth门面访问认证用户:要在方法上面声明useAuth;获取当前认证用户使用$user=Auth::user();获取用户认证ID$id=Auth::id;...

laravel5.6 调用第三方类库

大概流程:    1.新建一个目录方类库    2.配置composer配置文件    3.在项目中使用终端运行composer dumpautoload    4.使用时方法调用可以new对象后->方法名访问 也可以类名::方法名访问 1.在app目录中新建一个目录(目录名随意,我的是libs) 在这里小小的提示一下不太了解命名空间的同学们,在类中可以这样配置命名空间2.找到与app目录同级的composer.json文件  在里面找到aotuload这个配置,在classmap中配置你的路径 3.配置完成之后,打开终端运行composer dumpautoload命令即可4.之后直接在文件中调用即可原文:https://blog.csdn.net/qq_41718455/article/details/81505567...

laravel5.6 后台无法退出,必须清楚浏览器缓存才能退出

方法一:在后台,admin/logincontroleer.php中 可行publicfunctionlogout(Request$request){Auth::logout();$request->session()->flush();//清楚缓存returnedirect('/admin/login');}当我们修改Laravel默认Auth默认路径时,在点击logout按钮注销时,默认跳转的地址为项目的根目录,若想设置成自定义的重定向路径,可以按照如下设置:方法二:在AuthLoginController中,您有:useAuthenticatesUsers;将其更改为:useAuthenticatesUsers{logoutasperformLogout;}然后在LoginController中定义一个新方法logout():publicfunctionlogout(Request$request){$this->performLogout($request);returnredirect()->route('your_route');//you...
首页上一页...678910...下一页尾页