首页
学习
活动
专区
圈层
工具
发布

Laravel Eloquent 模型关联关系(下)

whereHas/orWhereHas 方法基于闭包函数定义查询条件,比如我们想要过滤发布文章标题中包含「Laravel学院」的所有用户: $users = User::whereHas('posts...: 如果你想进一步过滤出文章标题和评论都包含「Laravel学院」的用户,可以在上述闭包函数中通过查询构建器进一步指定: $users = User::whereHas('posts', function...: // and $users = User::whereHas('posts', function ($query) { $query->where('title', 'like', 'Laravel...学院%'); })->whereHas('posts.comments', function ($query) { $query->where('content', 'like', 'Laravel...whereHas 方法和 orWhereHas 方法相对的,也有 whereDoesntHave 和 orWhereDoesntHave 方法,使用方法一样,这里就不再赘述了。

23K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Docker Swarm集群部署lnmp+redis

    它就像一个描述了下面物品的清单列表一样: 服务名称 使用哪个镜像来创建容器 要运行多少个副本 服务的容器要连接到哪个网络上 应该映射哪些端口 task 在Docker Swarm中,task是一个部署的最小单元...简而言之就是一个应用 包括了什么数据库 框架等,一个服务 = 多个容器 swarm基本操作命令 创建应用 docker stack deploy -c docker-compose.yml laravel...# -c 指定yml文件 后面跟的是应用名 删除应用 docker stack rm laravel 查看应用 docker stack ps laravel 查看所有服务 docker...0.50(不超过单个内核的50%)可用处理时间(CPU),并且具有保留20M的内存和0.25CPU时间(始终可用)。...stack deploy -c docker-compose.yml laravel 都启动完了, 可以查看访问每个节点的ip了, 都没有问题,数据表没有建立,所以抛的异常, redis已经OK ?

    3.9K10

    Laravel 使用Excel导出的文件中,指定列数据格式为日期,方便后期的数据筛选操作

    背景 最近,后台运维要求导出的 Excel文件,对于时间的筛选,能满足年份、月份的选择 通过了解,发现: 先前导出的文件,默认列数据都是字符串(文本)格式 同时,因为用的是 Laravel-excel...控件版本的问题,要实现的方式也不同 在此,根据版本不同,进行步骤整理,以便能帮助到有需要的小伙伴 … 所要达成的目标 框架 Laravel 版本: Laravel5.8 Excel...- Column formatting 参考文章:laravel-excel导出的时候写入的日期格式数据怎么在excel中正确显示成可以筛选的日期格式数据 提示 1....excelListData['下单日期'] = get_days_since1900($order_create_date); $this->saveExcel($title, $excelListData,'订单列表...导出的时候写入的日期格式数据怎么在excel中正确显示成可以筛选的日期格式数据 Laravel Excel 3.1 导出表格详解(自定义sheet,合并单元格,设置样式,格式化列数据)

    2.6K10

    解决方案 - 自动化单元测试

    前言 收到读者的咨询,情况是这样的: “亮哥,看了你最近的 8 篇关于持续交付的文章,想咨询一下对于研发人员有没有可落地的方案,我是 PHP 研发工程师,项目中使用的是 Laravel 框架,负责的是电商业务...约定测试 Case 以电商业务为例,简单列举 2 个测试 Case: 下单(从购物车下单) -> 支付(优惠券 + 余额) -> 发货 -> 收货 -> 评价; 下单(直接下单) -> 支付(微信) -...项目的框架是 Laravel,那么我们考虑的就是在框架中如何编写单元测试代码?这个比较简单,在 tests 目录就可以编写测试用例。...用例编写 安装 orchestra/testbench composer require --dev "orchestra/testbench" 使用这个包,可以帮助编写 Laravel 项目测试,在这里面可以使用...Laravel 中的一些特性。

    1.7K10

    PHP-Casbin:一个让开发者不再为权限控制 “重复造轮子” 的工具

    当时的代码让我至今印象深刻:100 多个控制器里,每个方法都嵌着权限判断逻辑,比如订单列表页要写“管理员看所有、商家看自己的、客服看分配的”,光是这一段逻辑,在不同模块里重复了 20 多次。...硬编码逻辑:改一个权限,牵出 10 个 bug当时项目里的权限判断全是if-else嵌套,比如:// 订单列表权限判断(项目代码片段)if ($user->role == 'admin') { /...多框架难兼容:换项目要重写权限当时同时维护Laravel 和gin+gorm两个框架的项目,权限逻辑只能分开写两套。也没有一个公共维护权限的中间层,不用框架、不同语言的项目各自维护各自的项目权限。...,不管你用Laravel、ThinkPHP、Yii2、Webman、Hyperf、EasySwoole等,还是原生 PHP,都能无缝集成。...以Laravel为例,只需 3 步:# 1. 安装适配包composer require casbin/laravel-authz# 2.

    36310

    MySQL进阶篇(03):合理的使用索引结构和查询

    二、索引创建 1、单列索引 单列索引,即索引建立在表的一个字段上,一个表可以有多个单列索引,使用起来相对比较简单: CREATE INDEX user_id_index ON ds_order(user_id...) USING BTREE; 主键索引,或者上述的user_id_index都是单列索引。...时间点:就是订单生成的时间,年月日时分秒; 标识位:即一个唯一的UID,保证订全单号唯一; 埋点一:在很多业务中,在订单号记录产品类目; 埋点二:通常会标识产品属性,例如颜色,口味等; 错位符:防止订单号被分析...1、单列查询 这里直接查询主键索引,MySQL的主键一般选择自增,所以速度非常快。...列和单列索引order_no保证查询条件都使用了索引。

    94410

    基于有赞云的个人收款即时到帐实现方案

    环境已经准备 OK 了,你的手机上应该已经装了微小店应用了,接下来我们要发起交易,开始之前我们得准备好 SDK,如果你使用 Laravel,我封了一个包:overtrue/laravel-youzan,...qr_id 查询交易记录得到 $payment,然后调用了有赞云 API 的二维码订单列表得到这个二维码产生的成功的交易订单。...第三步:处理推送 这一步与其它支付的情况不太一样,因为推送过来的内容不是直接就能与你的订单关联上的,推送过来的内容中有一个 id 字段,这是有赞的订单 ID ,不是我们的订单 ID,我们先要拿这个 ID...list/grouptrade/payqrcode 交易 API: https://www.youzanyun.com/apilist/list/group_trade/trade overtrue/laravel-youzan...: overtrue/laravel-youzan HanSon/youzan-sdk: HanSon/youzan-sdk 官方 SDK:youzan/open-sdk-php 号外:EasyWeChat

    2.4K40

    基于django+python+mysql的进销存管理系统的设计与实现

    同时,新添加的货物信息会自动增加到仓库货物列表中。 进货单删除功能:可以在进货单列表中删除任意不需要的进货单。...进货单修改功能:可以在进货单列表中选择任意需要修改的进货单进行修改,可以任 意修改进货单的进货单号、商品id、商品名称、商品单 位、商品数量、商品价格、 商品生产日期、商品保质期、进货单日期。...出货单删除功能:可以在出货单列表中删除任意不需要的出货单。...出货单修改功能:可以在出货单列表中选择任意需要修改的进货单进行修改,可以任 意修改进货单的进货单号、商品id、商品名称、商品单 位、商品数量、商品价格、 商品生产日期、商品保质期、进货单日期。...确定后对应的货物数量会减去输入的出单数量, 并且添加到出货单列表中,并且自动计算总金额。 仓库货物的查询功能:可以选择输入仓库货物的商品编号、商品名称、生产日期、订 单日期来对仓库货物进行模糊查询。

    2.4K10

    利用wifidog实现无线网络认证

    就是无线网络公开的,没有密码,但是你登陆上网的时候,会弹出认证页面,让你先注册登陆之后,才能正常上网,这个就是今天要讲到的东西。...做wifi认证的有很多,包括商用的,免费的、开源的,今天主要是讲wifidog,是开源的一套认证系统。 由于没有openwrt的路由器,所以直接用一台双网卡的CentOS系统来做wifidog认证。...wifidog-auth wifidog-auth安装部署 wifidog-auth是用php写的,采用laravel5.7框架,需要php7.1+支持 wifidog-auth安装 从git上下载源码后...#这个参数是指订网关IP地址 AuthServer #这一块内容,是指定认证服务器的链接信息 Hostname 192.168.2.111 #认证服务器地址 SSLAvailable no...附: wifidog-auth https://github.com/wifidog/wifidog-auth-laravel.git wifidog-gateway https://github.com

    3K10

    如何选择PHP框架?

    三种框架都很适合用来创建Web2.0应用程序,但每种框架的使用目的有所不同。我们看看它们具有哪些功能,以及它们之间的较量。 模板引擎 模板引擎减少开发人员的工作量,它为写前端代码提供更好的功能。...Laravel Blade模板系统 不像其它的模板系统,Blade让你在视图中使用PHP代码。另外,Blade具有零负荷应用程序的性能,因为它的视图文件必须使用.blade.php扩展文件名。...社区是发展的,所以对社区未来动态的预测是具有挑战性的。...Ajax支持 十分适合用于开发实时应用程序,因为它的操作更快 是高度可扩展的 可准确无误地处理错误 适合用来创建平静的Web服务 具有一个出色的社区,提供丰富的学习资源 Laravel: 是2015-2016...年最流行的框架 为设计者提供支持包管理 出色完成单元测试 提供丰富的包,用于扩展框架功能 具有一个出色的社区,提供丰富的学习资源 结束语 在Symfony 、Laravel和Yii三者较量中,这三个PHP

    9.6K90

    PHP-Laravel简介

    一、Laravel简介 1、简介 Laravel是一套简洁、优雅的PHP WEB开发框架(PHP Web Framework),具有富于表达性且简洁的语法,Laravel是易于理解且强大的,它提供了强大的工具用以开发大型...,健壮的应用,例如具有自动验证、路由、Session、缓存、数据库迁移工具、单元测试等常用的工具和功能。...官网:https://laravel.com/ 中文官网:http://www.golaravel.com/ 中文社区:https://laravel-china.org/ Laravel框架的广告语...: 为 WEB 艺术家创造的 PHP 框架 目前大部分的框架公共的特点(了解): (1)单入口,所有的请求必须从单入口开始,主要是便于管理(统一的参数过滤) (2)MVC的思想(分层思想,主要是为了协同开发...,实现后期的维护方便) (3)ORM操作数据库(Object Relations Model,关联模型):AR模式 注意:Laravel框架有一个特点,所有的URL访问都必须事先定好路由规则。

    1.4K20

    PHP 协程框架 Hypervel

    介绍 Hypervel 是一个 Laravel 风格的 PHP 框架,具有原生协程支持,可实现超高性能。...该框架将 Laravel 优雅而富有表现力的开发体验与基于协程的编程的强大性能优势相结合。如果您是 Laravel 开发人员,您将对这个框架感到宾至如归,只需要最少的学习曲线。...Hypervel 通过利用协程解决了这个问题,允许在不阻塞工作线程的情况下高效处理并发 I/O 作。这种方法可以显著提高具有大量 I/O 要求的应用程序的性能和并发性。...这意味着在这种情况下,您的 Laravel 应用程序无法获得更好的 QPS 结果。 Laravel Octane Laravel 以其富有表现力和优雅的语法、强大的包生态系统和繁荣的社区而闻名。...Hyperf 在 GitHub 上获得了 6000 多颗星,自 2019 年以来有 350 多名贡献者,是寻求现代 Web 框架来构建具有异步 I/O 支持的高性能 PHP 项目的开发人员的首选。

    28710

    laravel 学习之路 数据库操作 查询数据

    运行 Select 查询 你可以使用 DB Facade 的 select 方法来运行基础的查询语句我们在上面创建的路由里增加个 index 的路由 dump 是 laravel 的打印函数可以把它理解为...::select('select * from test where testId = :id', ['id' => 1]); dump($binding); } 查询构造器 Laravel...它可用于执行应用程序中大部分数据库操作,且可在所有支持的数据库系统上运行。 Laravel 的查询构造器使用 PDO参数绑定来保护您的应用程序免受 SQL 注入攻击。...laravel 中就是 whereIn() 第一个参数还是字段名第二个参数是数组 function getList() { $data = DB::table('test'...->orderBy('test.created_at', 'desc') ->get(); dump($data); } 从数据表中获取单行或单列

    4.1K20

    NativePHP桌面版V1.0正式发布!🪷

    NativePHP具有一系列易于使用的类,一套用于构建和打包应用程序的工具以及一个静态跨平台PHP运行时。 在软件开发领域,创新的浪潮从未停止。以往PHP多被用于Web开发,在服务器端发挥着重要作用。...而如今,借助NativePHP和Laravel的组合,开发者们迎来了新的机遇——用PHP编写原生桌面应用。...而Laravel,作为深受开发者喜爱的PHP开发框架,以其优雅的语法、强大的功能和丰富的生态系统闻名。...官网地址:https://nativephp.com 应用场景 使用NativePHP和Laravel开发原生桌面应用具有诸多优势。...再如一些小型的办公辅助工具,利用PHP的脚本处理能力和Laravel的快速开发特性,能够快速搭建出功能实用的应用程序。

    32300

    Laravel 表单 size 验证数字

    要验证一个数字的确定值,看了表单验证文档 size:value验证的字段必须具有与给定值匹配的大小。对于字符串来说,value 对应于字符数。对于数字来说,value 对应于给定的整数值。...numeric或者integer, 看源码直接跳到\Illuminate\Validation\Validator::fails()查看验证 Laravel 主要验证的方法是这个$this->validateAttribute...($attribute, $rule); Laravel 前面这些是过滤,验证文件上传的 Laravel 这里动态拼接了一个方法,通过打印得知是validateSize Laravel 然后在这个类用的...trait 中找到这个方法ValidatesAttributes::validateSize Laravel 其实这里已经可以看到验证$hasNumeric Laravel $hasNumeric里放的是这个...Laravel 再看一下他是如何验证的 Laravel Laravel 如果没有numeric或者integer会返回 null,就会导致$hasNumeric等于 false Laravel

    85110

    夏天当然要去海边!这两款小程序,帮你搞定旅行大计

    对于酒店的选择,不同的人自然需求不同。针对五花八门的住宿需求,「艺龙酒店预订」都能提供精准的推荐。 ?...促销方式的选项很是贴心,虽说出门旅行要住得舒适,但能以最优惠的价格订到酒店也是很棒的啊。 为了有更好的出行体验,客服提供了一整个页面。不论是咨询或是投诉,按下电话小图标就能快速拨打电话了。 ?...个人体验小结 查找酒店时,可选择设置的查找条件较多,能更快找到符合自己需求的酒店。 我尤其喜欢促销方式这个选项,订酒店优惠下来的钱,可以都花在吃吃吃上面啦,哈哈。 ?...此外,订单列表和电话客服都按国内酒店和国际酒店分类,对于经常出国的朋友来,说查找会相对轻松快捷一些。 ?...如:通过小程序购买的门票价格是否实惠,文化底蕴深厚的景点不要讲解员是否能玩好。 很多热心网友会分享自己的行走路线,可以根据情况优化自己的旅行计划。 ?

    36520
    领券