Php 在多个关系中存在下划线问题?

Php 在多个关系中存在下划线问题?,php,laravel,eloquent,Php,Laravel,Eloquent,我使用的是最新版本的封装口才版本 class Retailer extends Eloquent { // each retailer has many shipping_groups public function shipping_groups() { return $this->hasMany('ShippingGroup'); } } 模式是 $capsule::schema()->create('shipping_groups',

我使用的是最新版本的封装口才版本

class Retailer extends Eloquent {

    // each retailer has many shipping_groups
    public function shipping_groups() {
        return $this->hasMany('ShippingGroup');
    }
}
模式是

$capsule::schema()->create('shipping_groups', function($table) {

    $table->increments('shipping_group_id');
    $table->string('label');

});
但是
$retailer->shipping\u groups
确实返回了
NULL
。我用
公共函数xy()
进行了尝试,结果成功了。在我将SQL表命名为
shipping\u groups
时,我还尝试了
$retailer->shippinggroups\u test
,它显然不是同名的,并且带有下划线,这也不起作用


那么,下划线是否存在普遍问题?通常通过在属性中使用?还是怎样是虫子吗?还是我太笨了,看不到自己的错误?

1。您可以在模型中定义
protected$table
string变量,并将其设置为其表的调用方式,以防您决定不遵守命名约定2。
shipping\u groups
表不包含
retailers
表的键,它应该如何建立关系?如果我误解了您的模式,很抱歉,但我觉得有些地方不对劲。您会添加两个要共享关系的模型吗?
ShippingGroup
型号不存在,是吗@KaloyanDoichinov认为这个过程是正确的,所以这将帮助我们进一步解读它。从您发布的代码中,我看不到@KaloyanDoichinov所说的这两个表之间的关系。如果您发布了retailers表的模式,或者发布了pivot表(如果有的话),这将非常有用。