Ho un setter personalizzato che sto utilizzando un metodo __construct
sul mio modello.Una __costruzione su un modello eloquente di Laravel
Questa è la proprietà che desidero impostare.
protected $directory;
mio Constructor
public function __construct()
{
$this->directory = $this->setDirectory();
}
Il setter:
public function setDirectory()
{
if(!is_null($this->student_id)){
return $this->student_id;
}else{
return 'applicant_' . $this->applicant_id;
}
}
mio problema è che dentro il mio setter la, $this->student_id
(che è un attributo del modello di essere tirato dal database) sta tornando null
. Quando I dd($this)
dall'interno del mio setter, noto che il mio #attributes:[]
è un array vuoto.
Quindi, gli attributi di un modello non vengono impostati fino a quando non viene attivato __construct()
. Come posso impostare l'attributo $directory
nel mio metodo construct?
Questo è esattamente ciò di cui avevo bisogno !! Grazie –