Anotace – komplexnejsi
- xmn
- Člen | 6
Zdravim,
momentalne pracuji na komplexnejsim systemu, jehoz soucasti je i neco jako ORM. Vazby mezi db a modelem vytvarim pomoci Annotations ale mam bohuzel problem zadat slozitejsi anotaci, ktera by, teoreticky, mela fungovat. IMHO je problem v regularu ve tride Annotation
<?php
/**
* @var array
* @dbTable(table='article_meta',pk=false,bind=array('id'=>'article_id','var'=>'var','val'=>'value','type'=>'type'))
* */
protected $meta;
?>
parametr bind je rozparsovan takto: [bind] ⇒ array(‚var‘=>‚var‘
tzn. za prvnim parem pole je „utnut“. Coz se mi samo o sobe nelibi. Jedna se o bug? Nicmene bych privital i naslednou interpretaci parametru tak aby se array() interpretoval na pole, true/false na booly a pod. Bylo by to dokonale ;-)
Diky za info,
Mirek.
Editoval xmn (20. 7. 2009 7:37)
- David Grudl
- Nette Core | 8228
Ten parser je poměrně jednoduchý a s taktovýmto využitím nepočítá. Takovýto zápis v phpDoc čitelně stejně nevypadá, takže bych asi nešel cestou úpravy parseru, ale úpravy zápisu. Co třeba
<?php
/**
* @var array
* @dbTable(table='article_meta',pk=false)
* @dbBind(id=article_id,var=var,val=value,type=type)
* */
protected $meta;
?>