Boa tarde!
Estou tentando criar uma model que estende uma model pai, a fim de fazer uma consulta que retorne dados das duas classes. Todavia, ao tentar fazer a consulta no Eloquent com a classe filha, os atributos da classe pai não estão disponíveis. Enfim, quero fazer uma consulta no Eloquent com a classe filha que tenha na condição (where) os campos da classe pai, que deveriam ter sido herdados automaticamente.
Segue extrato do código de definição das classes:
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Pessoa extends Model
{
protected $fillable = ['nome', 'endereco'];
// Outros métodos, relações, etc.
}
namespace App\Models;
class PessoaFisica extends Pessoa
{
protected $fillable = ['cpf']; // Atributos adicionais da classe filha
// Outros métodos, relações, etc.
}
Face do exposto, é possível realizarmos herança nas Models no Laravel ou devido ao fato do Eloquent ser baseado no Active Record, não é possível herança em Models e para fazer o que eu quero, eu deveria considerar que são dois models distintos e não usar herança?
Obrigado desde já!
Att., Marcelo Mendonça