拉拉维尔一对多(从第二个表中选择所有行)


laravel one to many(select all rows from second table)

我想从服务表中选择所有服务行_____我有两个表users模型(用户).....和servs与模型(服务) ... .u想要在用户身份验证时从服务中选择所有行我该怎么做???

public function postserv(){
        $serv   =   User::find(Auth::user()->id)->servs;
        $serv   =   $serv->first();
        return $serv->serv_id;
    }

我不确定模型名称,但它应该是像Serv::all()

你的问题非常模糊,很难确定你的项目中发生了什么,但我会试一试。

如果要选择模型的所有行,请使用以下命令: Services::all()

虽然这是您明确要求的,但您的问题似乎与您为用户选择所有服务的关系有关。 User::find(Auth::user()->id)->servs()->get();

这将返回所有加入到授权用户的服务,在命名约定的注释中,您应该使您的关系更具可读性。另请注意,您必须在 Eloquent 模型中设置关系,否则上述代码将失败。

将来尝试为您的问题添加更多细节,在Laravel网站上的Eloquent ORM中有更多关于关系的信息。

ModelName::all();

返回模型/表中的所有行。