首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >主id引用另一个枢轴的laravel雄辩枢轴

主id引用另一个枢轴的laravel雄辩枢轴
EN

Stack Overflow用户
提问于 2019-03-03 12:01:56
回答 2查看 662关注 0票数 1

我对透视表之间的关系有问题。

我在国家和街道之间有许多对多的关系,但是这个(数据透视表)的主键与数字有多对多的关系。

我需要这些清单(有说服力):

代码语言:javascript
运行
AI代码解释
复制
$country = Country::findOrFail(1)->with('streets', 'numbers')
foreach ($country->streets as $street){
    foreach($street->numbers as $number) {
       $number;
    }
}

或者存在任何解决方案?

这只是一个例子。表的正式名称已更改。

示例结构:

代码语言:javascript
运行
AI代码解释
复制
Table Countries
    id
    name

Table Streets
    id
    name

Table country_street
   id
   country_id
   street_id

Table number_country_street
   id
   number_id
   country_street_id

Table numbers
   id
   name

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-03 13:25:07

对于您的表,我将定义一个额外的模型: CountryStreet,类似于:

代码语言:javascript
运行
AI代码解释
复制
// CountryStreet
class CountryStreet extends Model
{
    public function city()
    {
         return $this->belongsTo('App\City');
    }

    public function street()
    {
         return $this->belongsTo('App\Street');
    }
    public function numbers()
    {
         return $this->belongsToMany('App\Number', 'number_country_street');
    }
}

// Country
class Country extends Model
{
    public function streets()
    {
         return $this->hasManyThrough('App\Street', 'App\CountryStreet');
    }
}

// Streets
class Street extends Model
{
    public function countries()
    {
         return $this->hasManyThrough('App\Country', 'App\CountryStreet');
    }
}

// Number
class Number extends Model
{
    public function country_streets()
    {
         return $this->belongsToMany('App\CountryStreet', 'number_country_street');
    }
}
票数 1
EN

Stack Overflow用户

发布于 2019-03-03 17:27:56

@dparoli有个好主意。

有时对于多对多关系使用继承Pivot类,但现在无关紧要。

因此,现在我们可以将这些代码用于清单。

代码语言:javascript
运行
AI代码解释
复制
$country = Country::findOrFail(1);
foreach ($country->countryStreet as $countryStreet){
    echo $countryStreet->street->name
    foreach($countryStreet->numbers as $number) {
       $number;
    }
}

class Countries
     public function countryStreet()
     {
         return $this->hasMany(CountryStreet::class, 'country_id', 'id');
     }

Class CountryStreet with method block() using relation hasOne

另一个实现是up。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54968572

复制
相关文章
使用平滑函数快递进行枢轴点检测
枢轴点(Pivot Points)是一种用于股票、期货、外汇等金融市场的交易的技术分析工具。它们帮助交易者确定可能的支撑和阻力水平,以及价格可能发生反转的地方。枢轴点是基于前一个交易日的高、低和收盘价计算出来的。
deephub
2023/09/22
2570
使用平滑函数快递进行枢轴点检测
Conflux共识算法解读
上次我们讲到GHOST算法[2],它在中本聪共识的基础上提出的确定主链的算法,在保障了在高吞吐量的同时还保障了安全性(即不容易分叉,依然保证51%攻击)。但是GHOST算法的吞吐量是否还有进一步的提升空间呢?
Tiny熊
2020/06/04
1.2K0
Windows Phone Developer Tools RTW 新特性-Pivot控件
    IE9 Beta发布了,Windows Phone Developer Tools RTW也来了,开发者和发烧友又有得忙活了。园子里好多朋友已经开始了研究,包括马宁、张欣、Jake、randylee、chenkai等等,我也来加入吧。     刚刚安装了Windows Phone Developer Tools RTW,其中UI方面一些新特性,包括Bing Maps Silverlight Control for Windows Phone、Panorama Control for Windows
ShiJiong
2018/01/10
8260
Windows Phone Developer Tools RTW 新特性-Pivot控件
基础算法|5 快速排序
我们之前学习了冒泡排序算法,我们知道,在冒泡排序过程中,只对相邻的两个元素进行比较,因此每次交换两个相邻的元素时只能消除一个逆序。如果能通过两个(不相邻)元素的一次交换,消除多个逆序,则会大大加快排序的速度。而这就是本篇文章讲述的另一种基本排序算法——快速排序算法。
ACM算法日常
2018/11/07
5790
排序算法之交换排序(冒泡排序、快速排序)
冒泡排序的基本思想是:从前往后(或从后往前)两两比较相邻元素的值,若为逆序(即A[I-1]>A[I]),则交换它们,直到序列比较完。我们称它为第一趟冒泡,结果是将最小的元素交换到待排序列的第一个位置(或将最大的元素交换到待排序列的最后一个位置),关键字最小的元素如气泡一样逐渐向上“漂浮”。最终一个一个排好了位置。
跋扈洋
2021/09/03
6310
排序算法之交换排序(冒泡排序、快速排序)
一文带你读懂排序算法(五):快速排序算法
快速排序算法是一种非常高效的排序算法,它采用“分而治之”的思想,将大的拆分为小的,小的拆分为更小的。
后台技术汇
2022/05/28
6980
一文带你读懂排序算法(五):快速排序算法
(3)交换排序之快速排序
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
suveng
2019/09/17
4070
(3)交换排序之快速排序
详解快速排序算法
本文的思路是以从小到大为例讲的。 快速排序的基本思想是任取待排序序列的一个元素作为中心元素(可以用第一个,最后一个,也可以是中间任何一个),习惯将其称为pivot,枢轴元素; 将所有比枢轴元素小的放在其左边; 将所有比它大的放在其右边; 形成左右两个子表; 然后对左右两个子表再按照前面的算法进行排序,直到每个子表的元素只剩下一个。
全栈程序员站长
2022/09/06
5780
详解快速排序算法
详解快速排序算法
本文的思路是以从小到大为例讲的。 快速排序的基本思想是任取待排序序列的一个元素作为中心元素(可以用第一个,最后一个,也可以是中间任何一个),习惯将其称为pivot,枢轴元素; 将所有比枢轴元素小的放在其左边; 将所有比它大的放在其右边; 形成左右两个子表; 然后对左右两个子表再按照前面的算法进行排序,直到每个子表的元素只剩下一个。
code随笔
2020/04/14
4460
详解快速排序算法
算法 | 排序算法图形化比较:快速排序、插入排序、选择排序、冒泡排序
用Objective-C实现几种基本的排序算法,并把排序的过程图形化显示。其实算法还是挺有趣的 。 选择排序 冒泡排序 插入排序 快速排序 01 选择排序 以升序为例。 选择排序比较好理解,一句话概括就是依次按位置挑选出适合此位置的元素来填充。 1.暂定第一个元素为最小元素,往后遍历,逐个与最小元素比较,若发现更小者,与先前的"最小元素"交换位置。达到更新最小元素的目的。 2.一趟遍历完成后,能确保刚刚完成的这一趟遍历中,最的小元素已经放置在前方了。然后缩小排序范围,新一趟排序从数
用户1332428
2018/03/08
1.5K0
算法 | 排序算法图形化比较:快速排序、插入排序、选择排序、冒泡排序
算法(各种排序算法,有图!)
用 Objective-C 实现几种基本的排序算法,并把排序的过程图形化显示。其实算法还是挺有趣的 ^ ^.
用户2617681
2019/08/08
1.2K0
算法(各种排序算法,有图!)
iOS数据结构与算法-归并排序与快速排序
顾名思义,归并排序就是利用归并的思想实现排序方法. 它的原理是假设初始序列含有n个记录,则可以看成n个有序的⼦序列. 每个子序列的长度为1,然后两合并.
CC老师
2022/01/13
2790
分治法(Divide-and-Conquer Algorithm)经典例子分析
上一篇文章里给大家介绍了归并排序,今天首先给大家带来同样运用分治法来解决问题的快速排序。
用户1621951
2019/10/18
3.5K0
快速排序
快速排序是一种被广泛运用的排序算法,虽然其最坏情况下的时间复杂度为 ,但其平均时间复杂度为 ,而且其常数因子非常小,所以实际情况下跑的很快。快速排序是不稳定的、原址的排序算法。
hotarugali
2022/03/02
5590
LeetCode-215-数组中的第K个最大元素
在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。
benym
2022/07/14
3680
快速排序(Python实现)
一、 算法介绍 快速排序是经常考查到的排序算法,这里对快排算法做一下总结。快速排序是“交换”类的排序,它通过多次划分操作实现排序!以升序为例,其执行流程可以概括为:每一趟排序选择当前所有子序列的一个关键字(通常是第一个)作为枢轴量,将子序列中比枢轴量小的移到枢轴前边,比枢轴大的移到枢轴后边,具体过程是一个交替扫描和交换的过程。当本趟所有子序列都被枢轴以上述规则划分完毕后会得到新的一组更短的子序列,它们会成为下一趟划分的初始序列集。 二、演示流程
全栈程序员站长
2022/07/22
6500
快速排序(Python实现)
视频动画 | 什么是快速排序?
上一篇文章介绍了 冒泡排序和它的优化 。这次介绍的快速排序是冒泡排序演变而来的算法,比冒泡排序要高效的很多。
我脱下短袖
2019/12/23
6430
分享面试中常见的两道需要手写代码题的解题思路
之前参加过几场甲方公司的面试,当时有遇到面试官要求手写代码实现一个多线程有序打印和实现快速排序的两道题。当时写的心里不是很确定自己的答案在代码跑起来的时候会不会有问题,这两天终于有时间在家写两个demo在本地跑一跑验证一下了。后来上网一查,发现多线程实现交替有序打印和手写快速排序是Java程序员的高频面试题,那我就觉得有必要把自己的解题思路和测试代码分享出来了,希望能帮助到本公众号部分最近需要参加面试的小伙伴!
用户3587585
2022/09/21
4940
该用Python还是SQL?4个案例教你
在数据分析行业,对数据提出的每一个问题都可以用多种潜在的语言和工具包来回答。每种语言都有其优势,它们之间也存在着不同的区别。不能否认的是,有些操作用Python执行起来要比SQL更加高效。这篇文章分享了4个能够节省时间的案例,在这几个案例中,Python在探索和分析数据集方面远远优于SQL。
py3study
2020/01/16
1.1K0
快速排序(三种算法实现和非递归实现)
快速排序(Quick Sort)是对冒泡排序的一种改进,基本思想是选取一个记录作为枢轴,经过一趟排序,将整段序列分为两个部分,其中一部分的值都小于枢轴,另一部分都大于枢轴。然后继续对这两部分继续进行排序,从而使整个序列达到有序。
全栈程序员站长
2022/09/17
2K0
快速排序(三种算法实现和非递归实现)

相似问题

Laravel 4雄辩的枢轴台

12

基于枢轴id的Laravel雄辩集滤波器

23

用Laravel/雄辩填充枢轴表

10

枢轴表和雄辩的Laravel 5.5

23

Laravel 4雄辩的双枢轴表

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档