【发布时间】:2014-07-06 18:15:41
【问题描述】:
我有 3 个如下所示的表:
市场
- 身份证
- 姓名
Market_to_City
- market_id
- city_id
城市
- 身份证
- 姓名
还有一个看起来像这样的模型:
class Market extends Eloquent {
protected $table = 'Market';
public function citys() {
return $this->belongsToMany('City', 'Market_to_City', 'market_id', 'city_id');
}
}
每个市场都有许多通过 Market_to_City 表映射的城市。 citys 方法应该返回与市场相关的城市集合。但是,这每次都会返回一个空集合,我是否使用了正确的模型关系?
【问题讨论】:
-
问题是什么?如何编写选择查询?您不需要为此使用数据透视表。
-
谢谢,更新帖子以实际提出问题!
-
您确定您的表中有匹配的数据吗?例如,如果您有一个 id 为 1 的市场,您可以在 Market_to_City 表中看到 markkey_id 为 1 的行,并且这些行中的每一个都有城市值。
-
@user3158900 是的。 Market_to_City 表中有正确包含 market_id 和 city_id(这些各自模型的主键)的条目。
-
看起来好像您正确设置了关系。您具体是如何实施它们的?
标签: laravel