'integer', 'country_id' => 'integer', ]; protected static function booted() { static::creating(function ($model) { $model->created_by = auth()->id(); }); } /** * Get the options for generating the slug. */ public function getSlugOptions(): SlugOptions { return SlugOptions::create() ->generateSlugsFrom(['country.code', 'name']) ->saveSlugsTo('slug') ->usingLanguage('de'); } public function createdBy(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(User::class, 'created_by'); } public function country(): \Illuminate\Database\Eloquent\Relations\BelongsTo { return $this->belongsTo(Country::class); } public function venues(): \Illuminate\Database\Eloquent\Relations\HasMany { return $this->hasMany(Venue::class); } function courseEvents() { return $this->hasManyThrough(CourseEvent::class, Venue::class); } function meetups() { return $this->hasMany(Meetup::class); } }