I have the following Tabelas/Models
and I am not able to make a query:
Model 1
id | Name
---+---------------
1 | Model1.1
2 | Model1.2
3 | Model1.3
Model 2
id | Name | model1_id
---+----------+----------
1 | Model2.1 | 1
2 | Model2.2 | 2
3 | Model2.3 | 3
Model 3
id | Name | model2_id
---+----------+----------
1 | Model3.1 | 1
2 | Model3.2 | 2
3 | Model3.3 | 3
class Model1 extends Model
{
public $table = 'model1';
const CREATED_AT = 'created_at';
const UPDATED_AT = 'updated_at';
protected $dates = ['deleted_at'];
public $fillable = ['name','model2_id'];
protected $casts = ['name' => 'string'];
public static $rules = [];
public function model2()
{
return $this->belongsTo(\App\Models\Model2::class);
}
}
class Model2 extends Model
{
public $table = 'model2';
const CREATED_AT = 'created_at';
const UPDATED_AT = 'updated_at';
protected $dates = ['deleted_at'];
public $fillable = ['name'];
protected $casts = ['name' => 'string'];
public static $rules = [];
public function model1()
{
return $this->hasMany(\App\Models\Model1::class);
}
public function model2()
{
return $this->belongsTo(\App\Models\Model2::class);
}
}
class Model3 extends Model
{
public $table = 'model3';
const CREATED_AT = 'created_at';
const UPDATED_AT = 'updated_at';
protected $dates = ['deleted_at'];
public $fillable = ['name',];
protected $casts = ['name' => 'string'];
public static $rules = [];
public function model2()
{
return $this->hasMany(\App\Models\Model2::class);
}
}
With the example below I could not because what I need is to know Model1
related to Model3
.
$model1 = Model3::where('model2_id', 2);