首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用belongsToMany实现joinTable

利用belongsToMany实现joinTable
EN

Stack Overflow用户
提问于 2015-08-04 08:54:04
回答 1查看 126关注 0票数 1

使用CakePhp 3.0.10

我想使用belongsTo选项创建一个through关系,但是我也需要设置joinTable选项,因为我的表有一个前缀

按照书中的例子,如果我写的话:

代码语言:javascript
复制
$this->belongsToMany('Courses', [
    'through' => 'CourseMemberships',
    'joinTable' => 'prefix_course_memberships',

]);

我知道错误:

代码语言:javascript
复制
1146 Table 'course_memberships' doesn't exist

这是一个bug,还是我可以强制cakephp使用我的表的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-04 10:14:30

through选项取代joinTable选项,查看代码,这是预期的行为。

https://github.com/cakephp/.../src/ORM/Association/BelongsToMany.php#L173-L184

因此,如果您想在使用through时更改表名,只需在CourseMembershipsTable类中更改它,就像对任何其他表类一样。

代码语言:javascript
复制
public function initialize(array $config)
{
    $this->table('prefix_course_memberships');
    // ...
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31804798

复制
相关文章

相似问题

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