创建一个真正的用户端点 我们将创建一个 UsersController 使用 Laravel 5.5 新的 API 资源 来返回 JSON 数据。...本教程未向您展示如何构建分页,因此您可以自己找到(或创建)自己喜欢的分页! 分页是一种很好的方法,可以向您展示如何以编程方式使用 Vue 路由器在 SPA中 导航。...我还要指出的是,我向您展示 了上一个和下一个动作的元素,主要是为了演示 通过编程方式进行导航 的过程 vue-router,您很可能会使用它 来自动在分页路线之间导航...,该组件在后端使用 Laravel 的 API 模型资源进行简单的分页链接并将数据包装在 数据 键中。...接下来,我们将致力于创建,编辑和删除用户。
我们知道,从 Laravel 8 开始,自带前端脚手架代码默认兼容 Tailwind CSS 框架,取代了之前的 Bootstrap CSS 框架。那么 Tailwind 是什么?...如何在 HTML 页面中使用?学院君将在这篇教程中给大家简单介绍下。...三、渲染一个卡片组件 下面我们分别通过 Bootstrap 和 Tailwind 框架渲染一个卡片组件,来看看两者实际使用的区别。...: 基于 Bootstrap 渲染卡片组件 可以看到,我们不用做任何样式设计和编码就可以基于 Bootstrap 内置的卡片组件相关 class 渲染出一个漂亮的卡片组件来。...往往只包含单个样式属性设置(负责单个职能): 以上就是 Tailwind 和 Bootstrap 的主要区别和基本使用介绍,更多细节,请参考 Tailwind 官方文档。
在日常开发中,对数据库查询结果进行分页也是一个非常常见的需求,我们可以基于之前介绍的查询方法和前端 HTML 视图实现分页功能,不过从 Laravel 5.3 开始,Laravel 框架就已经为我们提供了非常完整的分页解决方案...关于如何使用 Laravel 自带的分页功能进行分页,可以参考官方文档中的分页章节,说的非常清楚,在这篇教程中我们就不再一一演示了,不过 Laravel 自带的分页器实现的分页链接是动态 URL,不利于...创建文章列表视图 首先我们来创建文章列表视图,在 resources/views 目录下创建一个子目录 post,然后在该目录下创建视图文件 index.blade.php,并编写视图代码如下: 创建 Vue 分页组件 在 resources/js/components 目录下创建一个新的 Vue 组件 PaginationComponent.vue,并初始化代码如下: 和 Laravel 自带的分页视图 vendor/laravel/framework/src/Illuminate/Pagination/resources/views/bootstrap
了解Git和Github 1.1 什么是Git Git是一个免费、开源的版本控制软件 1.2 什么是版本控制系统 版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况得系统。...Github可以托管各种git库,并提供一个web界面(用户名.github.io/仓库名) 1.4 Github和Git是什么关系 Git是版本控制软件 Github是项目代码托管的平台,借助git...PHP开发框架(thinkphp):https://github.com/top-think/thinkphp 全球最流行的PHP框架(laravel):https://github.com/laravel...关注(Watch) 关注项目,当项目更新可以接收到通知 事务卡片(Issue) 发现代码BUG,但是目前没有成型代码,需要讨论时用; Github主页 账号创建成功或点击网址导航栏github...脚下留心 1、因为github在国外服务器所以访问较慢或者无法访问 2、私有仓库只能自己或者指定的朋友才有权限操作(私有仓库是收费的) 3、新注册的用户必须 验证邮箱 后才可以创建git库仓库
上一节课 https://my.oschina.net/lilugirl2005/blog/783370 上一节课我们讲了laravel5.3的安装,这节讲laravel5.3的一些基础命令和配置 Listeners...文件夹 进入laravel项目目录输入命令 创建用户注册的事件监听 看看 php artisan make:listener UserSignUpListener --event=UserSignUp...DB 查询返回 Collection 创建初始数据 ? 创建3条假数据 ? 其实你可以生成更多的测试数据方便后面的分页功能的测试,所以我又执行了一遍命令生成了30条假数据 DB查询语句 ?...相应的修改 .env文件中 对应的 MAIL_USERNAME和MAIL_PASSWORD ?...下面演示如何在邮件中传递变量 app/Mail/welcometo1ke.php 文件改动如下 ? routes/web.php改动如下 ?
Laravel是一个有着美好前景的年轻框架,它的社区充满着活力,相关的文档和教程完整而清晰,并为快速、安全地开发现代应用程序提供了必要的功能。...2011年,Taylor Otwell将Laravel作为一种包含全新现代方法的框架介绍给大家。Laravel最初的设计是为了面向MVC架构的,它可以满足如事件处理、用户身份验证等各种需求。...模块化和可扩展性 Laravel注重代码的模块化和可扩展性。你可以在包含超过5500个程序包的Packalyst目录中找到你想要添加的任何文件。Laravel的目标是让你能够找到任何想要的文件。...你可以安装中间件,用于验证注册用户,并避免如跨站脚本(XSS)或其它的安全状况的问题。 Laravel中分页是非常容易的因为它能够根据用户的浏览器当前页面生成一系列链接。
此外,还可以探测到预设的 52 种丰富的面部动作,如眨眼、微笑、皱眉等等。...根据这张图片创建 SCNPlane,以作为 SCNNode 的外观。 卡片大小 ARKit 中的物体都是近大远小。...这样既解决了距离过近的问题,又可以保持卡片之间的远近关系。用户位置发生位移到达一定阈值后,会触发一次新的网络请求,根据新的用户位置来重新计算商家的位置。这样随着用户的移动,卡片的位置也会持续地更新。...由于每个卡片都被设置了 SCNBillboardConstraint 约束,始终朝向摄像头方向。摄像头轻微的角度变化,都会引起卡片之间出现部分重合。...与有厚度的物体不同,卡片之间的深度关系变化很快,很容易出现多个卡片在屏幕同一个位置渲染的情况。所以经常会出现闪烁的现象: ?
使用过larave框架的朋友都知道laravel框架里面除了提供一些基本的功能(如控制器、视图、模型)之外,还有中间件、门面、契约等,这些东西是如何在laravel框架运用起来的呢?...IlluminateCacheCacheServiceProvider::class,提供缓存服务的服务提供者 好处:开发者可以节省下更多的精力去处理项目逻辑,且不同开发个体之间能达到一定默契,最重要的是...Foundation 的 Application 用来创建服务提供者,创建好之后保存在Container 的 Container 的服务容器里面,交由他管理,Application 要继承 Container...,和服务器容器没有直接关系,如果laravel这样设计的话,基本上和其他框架一样,没有任何优势。...事件:laravel里面的模型里面的事件,比如用户对数据库操作时做的一个监听。对整个项目运行进行监听,有监听的动作。类似tp5里面的钩子和行为。 中间件:做用户的请求做一定的过滤。
安装 环境 PHP >= 7.1 Laravel 5.5.0 ~ 7.* Fileinfo PHP Extension 开始安装 如果安装过程中出现 composer 下载过慢或安装失败的情况,请运行命令...首先需要安装 laravel,如已安装可以跳过此步骤 composer create-project --prefer-dist laravel/laravel 项目名称 7.*# 或 composer...create-project --prefer-dist laravel/laravel 项目名称 安装完 laravel 之后需要设置数据库连接设置正确 composer require dcat/...php artisan admin:install 启动服务后,在浏览器打开 http://localhost/admin/ , 使用用户名 admin 和密码 admin 登陆....app/Admin/Metrics/Examples 里面存放的是数据统计卡片(Metric Card) 的示例代码.
字段相等查询 有的时候,我们并不是在字段和具体值之间进行比较,而是在字段本身之间进行比较,查询构建器提供了 whereColumn 方法来实现这一查询: DB::table('posts')->whereColumn...等值连接(=):如 select * from posts p inner join users u on p.user_id = u.id 不等连接(、等):如 select * from...分页 日常开发中,另一个常见的查询场景就是分页查询了,在查询构建器中提供了两种方式来进行分页查询。...第一种是通过 skip 方法和 take 方法组合进行分页,skip 方法传入的参数表示从第几条记录开始,take 传入的参数表示一次获取多少条记录: $posts = DB::table('posts...另一种是通过 offset 方法和 limit 方法组合进行分页查询,offset 表示从第几条记录开始,limit 表示一次获取多少条记录,使用方式和 skip 和 take 类似: $posts =
接下来我们将尝试构建一个简易的课程系统,在这个系统中有教师(Teacher),学生(Student)和课程(Course),它们之间覆盖了简单的一对一、一对多、多对多等的关系,这在日常开发中也很常见。...因为我们已经完成了数据表中字段的定义、表与表的关系、以及最重要的一步:如何将数据及数据之间的关系写入数据库中,下面简单的来介绍下在 Laravel 是如何完成的。...Eloquent 查询它们之间的数据关系。...Symfony 完全是另一个可以和 Laravel 媲美的框架,甚至在很多设计上比 Laravel 还要超前;并且 Laravel 的核心组件如路由/Request/Container 都是构建在 Symfony...Livewire 和 Inertiajs 都是一种类前端框架,它们提供了一种更加高效的方式来管理前端页面,并且能更好的和 Laravel 整合在一起。但是它却带来了更高的学习成本和更多人力资源的浪费。
本文主要推荐下这款神器,并介绍下它的安装和配置,有兴趣的可以关注下这款神器。并且这款神器已经在RightCapital得到长时间应用了,结合HipChat和JIRA用起来很顺手,值得推荐。...开发环境:Laravel5.3 + PHP7 Sentry安装与配置 使用Sentry有两种方式:Sentry Cloud和Sentry Server。...Sentry提供针对几乎每种语言的平台Sentry Platform,这里介绍下如何在Laravel程序中集成Sentry。...登录进刚刚注册的账号后,先创建个Project得到这个Project的SENTRY_DSN(点击 New Project): 然后点击左上角选择刚刚创建的Project如个人创建的Sentry/Development...Laravel中异常处理类\App\Exceptions\Handler主要包含两个方法report()和sender(),其中report()就是主要用来向第三方service发送异常报告,这里选择向
Laravel 开发团队本周发布了 v6.7.0 版本,新增了一些新特性,以及对之前版本问题的修复。...1、新增特性一览 下面我们对其中一些比较值得关注的代码调整做简单的介绍: Eloquent 模型类中引入的 HasTimestamps Trait 新增了两个方法用来返回完整的创建和更新时间字段名(包含表名...资源集合现在可以通过调用 preserveQueryParameters() 方法在 API 资源分页时保留查询字符串: return MyResourceCollection::make($repository...paginate())->preserveQueryParameters(); 2、详细更新日志 新增方法 HasTimestamps Trait中新增 getQualifiedCreatedAtColumn() 和...unsetRelations() 方法(#30802) 新增 ResourceCollection::preserveQueryParameters() 方法以便在 API 资源分页时保留查询字符串(#30745
在上篇博客中,给大家演示了如何利用 UICollectionView 这个强大的控件去实现一个卡片轮播的效果,后来有网友联系我说:"他遇到一个问题,当他滚动的 item 宽度与屏幕宽度一致时,滚动效果是正常的...有人要问那是不是 UICollectionView 这个控件就只能按照屏幕的大小来分页呢!答案当然是否定的。 那自定义滚动分页该如何实现呢!...每次滚动停止都会调用上述的函数 func targetContentOffset(...), 在这个函数中有一个参数 proposedContentOffset 记录了滚动的目标位移坐标,通过这个坐标和记录的上次滚动的坐标可以判断出是向左滚动还是向右滚动...4.如果俩坐标的水平方向相减的绝对值大于某个固定值(譬如说 item 宽度的 8 分之一),则可以判断发生了分页,然后通过 proposedContentOffset 位移坐标和 item 的宽度大小来计算出当前滚动的页码...} else if lastOffset.x > offsetMax{ lastOffset.x = offsetMax } // 目标位移点距离当前点距离的绝对值
Paging是什么 想想我们之前的业务中,实现分页加载需要怎么处理?...通过上图我们也可以清晰的看出来,Paging在仓库层、ViewModel和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...所以我们在创建viewModel对象,并创建pager对象从而调用PagingSource方法 ,代码如下所示: class MainActivityViewModel : ViewModel() {...prefetchDistance:预取距离,简单解释就是 当距离底部还有多远的时候自动加载下一页,即自动调用load方法,默认值和pageSize相等 enablePlaceholders:是否显示占位符...dataBindingUtil.root) { var binding = dataBindingUtil } } 这里我们要提醒的是DiffUtil这个参数,用于计算列表中两个非空项目之间的差异的回调
容器内两个内容之间的距离要小于边缘的距离,这样容器两端都会有更大的空间(这提示用户他们已经滑到最后)。 如下: 需要注意的是,容器两端的距离和周围内容的距离是匹配的(也就是整体布局要和谐)。...使用 CSS Grid 网格布局方便我们控制元素之间的距离,无需进一步计算。...滚动容器 我们使用六个卡片来创建水平滚动容器,一次显示两张。...grid-columns 布局,因为会自动添加到水平滚动容器的开头和结尾。...中使用变量: grid-template-columns: 10px repeat(var(--total) , calc(50% - 40px)) // 重点 10px; 更新: 如
从 LBS 应用聊起 在移动互联网如火如荼的今天,各种 LBS(Location Based Service,基于地理位置服务)应用遍地开花,其核心要素是利用定位技术获取当前移动设备(手机)所在的位置...接下来,我们就可以通过 Geo 提供的 GEODIST 指令计算咖啡店之间的距离了(最后面的参数是距离单位): 还可以通过 GEOPOS 指令获取指定元素的坐标位置: 或者位置的哈希值: 你可以在 geohash.org...通过 Geo 实现查找附近咖啡店功能 基于以上的介绍,想必你已经对如何在应用代码中实现「查找附近的XXX」功能胸有成竹了,以咖啡店应用为例,我们需要在新增咖啡店时将咖啡店名称及坐标信息维护到一个 Geo...[$longitude, $latitude, $radius, 'km', 'WITHDIST', 'WITHCOORD']); 这里我们返回了用户周边 $radius 公里内所有的咖啡店,并包含距离和坐标信息...本系列教程首发在Laravel学院(laravelacademy.org)
最后,您将以适合您的应用程序的方式来决定如何构建资源和模型。 关于一致性的说明 使用一组约定(如REST)的最大优点是您的API将更容易消费和开发。...让我们开始我们的第一个模型和Migrations - 文章。该文章应该有一个标题和一个正文字段,以及创建日期。...路由和控制器 我们为我们的应用程序创建基本端点:创建,检索列表,检索单个,更新和删除。...标准成功代码和默认选项。 201:创建对象。有用的store行动(action)。 204: 无内容。当一个动作执行成功,但没有内容返回。 206:部分内容。当您必须返回分页的资源列表时很有用。...绝对有改进的空间 - 您可以使用Passport软件包实现OAuth2 ,集成分页和转换层(我推荐使用Fractal),但是我想通过在Laravel中创建和测试API的基础知识外部包装。
中间件类Laravel中的中间件实际上是PHP类。在创建中间件时,可以选择手动创建类,也可以使用Laravel提供的中间件生成器来自动生成。...手动创建中间件类的步骤如下:在app/Http/Middleware目录下创建一个新的PHP类文件,例如CheckAge.php。在该类文件中,定义一个handle方法。...例如,以下代码演示了如何在中间件组中注册中间件:protected $middlewareGroups = [ 'web' => [ \App\Http\Middleware\EncryptCookies...web中间件在这个示例中,我们定义了两个中间件组:web和api。web中间件组包含一组用于Web应用程序的中间件,如加密Cookie、启动会话和验证CSRF令牌。...api中间件组包含一组用于API的中间件,如速率限制和API身份验证。在路由中使用中间件。可以在路由定义中使用中间件。
领取专属 10元无门槛券
手把手带您无忧上云