首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 3:有没有一种方法可以为你的多对多数据透视表创建一个雄辩的模型?

Laravel 3:有没有一种方法可以为你的多对多数据透视表创建一个雄辩的模型?
EN

Stack Overflow用户
提问于 2013-03-13 21:12:42
回答 1查看 500关注 0票数 0

我要做的是在我的数据透视表中添加一个关系。我有一个独特的场景,其中我的数据透视表需要它自己在roles表上的has_one关系。有没有人看到专门为数据透视表创建一个雄辩的模型有问题?另外,如果我要创建这个模型,有没有办法让下面的代码返回这个模型?

代码语言:javascript
运行
复制
$user = User::where('id', '=', 1);
$pivot = $user->hasmanyexample()->pivot();

我特别希望能够做到以下几点:

代码语言:javascript
运行
复制
$user = User::where('id', '=', 1);
$pivot = $user->example()->pivot();

// class Example_User 
// public function role() { return $this->has_one('Role', 'role_id'); }
$role = $pivot->role(); 
EN

Stack Overflow用户

发布于 2013-03-13 22:47:36

首先,你必须创建一个Pivot的模型,在我的例子中,我有3个模型

  • Edition->has_many_and_belongs_to('Format);
  • Format->has_many_and_belongs_to('Edition);

生成的数据透视表将被称为edition_format,当我创建模型时,您首先必须创建一个目录版,并在该文件夹中创建一个名为format.php的文件,因此您将拥有以下内容:

-application/models/Edition/format.php

然后,您必须更改表名,因为edition_format查找复数(edition_formats),而关系需要laravel,因此您必须对以下内容进行添加:

代码语言:javascript
运行
复制
class Edition_format extends Eloquent

{

代码语言:javascript
运行
复制
public static $table = "edition_format";


/* whatever you want */

}

那么你可以这样叫它: Edition_format::find(1);

票数 4
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15386337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档