En laravel 8 hice una aplicación Model/Models/Role.php
class Role extends Model { use HasFactory; public function users(): BelongsToMany { return $this->belongsToMany(User::class); } }En rutas/web.php hice ruta
Route::get('/role/{id}/user', function ($id) { $users = Role::find($id)->users()->get(); foreach ($users as $user) { echo $user; } });PhpStorm muestra un error que dice "Método 'buscar' no encontrado en App\Models\Role". Por favor, ayúdame a arreglar esto. Gracias
Su único PhpStorm muestra errorr.Ide no puede reconocer métodos. Si llama a esa ruta, obtenga el resultado deseado.
Resolver
Método 'buscar' no encontrado en \App\Models\Role
simplemente llame al método de query()
$users = Role::query()->find($id)->users()->get(); query() devuelve \Illuminate\Database\Eloquent\Builder
Para modelos en PhpStorm, esta debería ser la respuesta definitiva:
https://stackoverflow.com/a/48847159/1382828
Usar @mixin \Eloquent en tus modelos cura todos los dolores de cabeza.