ModelLoader pres config.neon
- MW
- Člen | 615
Zdravím,
Něco jsem vyčetl a rád bych se ujistil, že
to delám správně.
Config:
tasksModel:
class: \IkonisModule\ModelLoader
rguments: ["@database"]
pagesModel:
class: \IkonisModule\ModelLoader
rguments: ["@database"]
atd...
ModelLoader:
namespace IkonisModule;
use Nette\Database\Connection;
class ModelLoader extends \Nette\Object {
protected $database;
public function __construct(\Nette\Database\Connection $database) {
$this->database = $database;
}
public function loadModel($modelName) {
return new $modelName($this->database);
}
}
a pristup v presenteru:
$this->context->tasksModel->loadModel('tasksModel')
Prijde me to ale, ze neco se da udelat lepe, protoze je to takove
krkolomne…
Cerpal jsem hlavne z fora, kde ti nejkovanejsi radí, ze by se modely mely
rozepsat v configu.
Jo a jak do toho nejlepe zakomponovat namespace, prosim ?
Diky !
Editoval MW (6. 9. 2012 20:13)
- Marek Šneberger
- Člen | 130
Pokud se nepletu, dřív (tuším Nette 0.9.x ?) se to muselo dělat přes modelLoader, ale s dvojkou přišlo krásné DI, takže můžeš modelLoader uplně vypustit. Pokud to použiješ jako službu, sám model dostane „to co potřebuje“ = připojení
- Filip Procházka
- Moderator | 4668
ModelLoader je velice old a fuj technika. Nyní používáme DIC, který je krásný a nový. Doporučuji se upnout na něj.
Editoval HosipLan (6. 9. 2012 21:54)