laravel - 如何为 eloquent 模型赋予别名

标签 laravel eloquent

<?php

namespace App\Http\Models;
use Illuminate\Database\Eloquent\Model;
use Sofa\Eloquence\Eloquence;
use Sofa\Eloquence\Mappable;

class User extends Model
{
    use Eloquence, Mappable;

    public $id;
    public $name
}


$data= User::select('distinct User.name')->join('Member as m','User.id','m.userId')->whereRaw('User.name is not null')->get();

我想避免一直使用表名,而我想使用别名。

最佳答案

您可以使用 Model::from这个方法

<?php

    class User extends Model
    {
      use Eloquence, Mappable;

      public $id;
      public $name
    }
    $data= User::from('User as u')
             ->select('distinct u.name')
             ->join('Member as m','u.id','m.userId')
             ->whereRaw('u.name is not null')
             ->get();
注意:我看到很多赞成票,但这种方法不是很好的做法。最好找到不同的方法。我的建议停留在常见的步行路径上。

关于laravel - 如何为 eloquent 模型赋予别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43865962/

相关文章:

laravel - 是否可以自定义 laravel eloquent morphToMany 的 name_type 列?

Laravel 4邮件类,如何知道电子邮件是否已发送?

php - Laravel Validator 仅适用于失败

拉拉维尔 9 : How to extend UrlGenerator core class

mysql - 渴望加载: How to get a few photos from table with polymorph relationship

php - Eloquent 多对多关系上的总和数据透视表字段

php - 使用 Laravel Eloquent 在 MySQL 列别名中添加空格

mysql - Laravel 中如何将行转换为列

php - Laravel WKHTMLTOPDF 不工作

Laravel 5.3 : delete image from storage