Jak dostat parametry do abstraktního modelu?
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- jEhLa
- Člen | 70
Dobrý den,
mám abstraktní model do kterého potřebuji dostat parametr z config.neon.
Jak ho tam ale dostat, aby byl přístupný pro všechny poděděné modely a nemusel jsem jim tento parametr předávat pořád dokola přímo v configu?
abstract class Model {
protected $db;
public function __construct ( \Nette\Database\Context $db ) {
$this->db = $db;
}
}
abstract class ContentModel extends Model {
public $param; //sem potřebuji dostat ten parametr
public function __construct ( $param, \Nette\Database\Context $db ) {
parent::__construct( $db );
$this->param = $param;
}
}
class PostModel extends ContentModel {
}
class FormModel extends ContentModel {
}
class NextModel extends ContentModel {
}
V config.neon:
services:
postModel: App\PostModel
formModel: App\FormModel
nextModel: App\NextModel
DB je normálně dostupná, ale nevím si rady jak tam dostat ten parametr, abych nemusel psát pořád dokola třeba něco jako:
services:
postModel: App\PostModel('%param%')
formModel: App\FormModel('%param%')
nextModel: App\NextModel('%param%')
Těch modelů bude časem totiž ještě víc..
Editoval jEhLa (28. 8. 2014 15:01)