Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@cursosdesarrolloweb
Created March 4, 2021 14:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cursosdesarrolloweb/cdeabce77f46587a1fb54ca397388e31 to your computer and use it in GitHub Desktop.
Save cursosdesarrolloweb/cdeabce77f46587a1fb54ca397388e31 to your computer and use it in GitHub Desktop.
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
class Country extends Model
{
use HasFactory;
public function posts(): HasManyThrough {
return $this->hasManyThrough(
Post::class,
User::class,
'country_id',
'user_id',
'id',
'id',
);
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class Post extends Model
{
use HasFactory;
public function user(): BelongsTo {
return $this->belongsTo(User::class);
}
}
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
class User extends Authenticatable
{
use HasFactory, Notifiable;
public function posts(): HasMany {
return $this->hasMany(Post::class);
}
public function country(): BelongsTo {
return $this->belongsTo(Country::class);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment