Re: DB_DataObject without ini file
| From: | Didier Galland | Date: | Thu, 09 Feb 2006 23:54:34 +0000 |
| Subject: | Re: DB_DataObject without ini file | ||
| References: | 1 2 3 | Groups: | php.pear.general |
| Request: | Send a blank email to pear-general+get-22918@lists.php.net to get a copy of this message | ||
That's right I'm talking about the db.ini file.
I remember too this thread where someone told that he has altered the generator, but I can't retrieve it (anyway he didn't publish his patch) nor the guy.
I think the best way would be to write the table() and key() function via the derivedHookFunctions() of generator, but I don't know from where I must pull the info...
I'm surprised that no one had this problem before...
It would be nice if this become an option when generating tables (writing dbname.ini or overriding methods in the class). Alan ;-) ?
Thanks for the help anyway.
Didier
Justin Patrin a écrit :
On 2/8/06, Nicholas Costa <ncosta@alum.rpi.edu> wrote:-- Justin Patrin ___________________________________________________________________________ Nouveau : téléphonez moins cher avec Yahoo! Messenger ! Découvez les tarifs exceptionnels pour appeler la France et l'international. Téléchargez sur http://fr.messenger.yahoo.comDidier, Sure you can. Set up an array of configuration values and then set them using PEAR::getStaticProperty. Notice that the options are retrieved by reference, so that they may be set by the following line (important for PHP4):I thought this is what the OP meant as well, but he's talking about the db.ini file which stored the schema info. To do this you can override the table() and key() methods in the DataObjects. *Someone* has altered the generator to do this in the past but it never made it into the main package. Try searching the archives.// DataObjects configuration $CONFIG['DataObject']['database'] = "mysql://<user>:<pass>@<host>/<db>";$CONFIG['DataObject']['schema_location'] = "<path/to/schema>"; $CONFIG['DataObject']['class_location'] = "<path/to/classes>"; $CONFIG['DataObject']['require_prefix'] = "<prefix>"; $CONFIG['DataObject']['class_prefix'] = "<prefix>";// configure DataObjects $options = &PEAR::getStaticProperty('DB_DataObject', 'options'); $options = $CONFIG['DataObject'];-- Nick On Feb 7, 2006, at 10:58 AM, Didier Galland wrote:I'm using the same auto generated files for multiple databases (more than 50 indeed with exactly the same structure) and I have to copy the dbname.ini file for each one (and at each structure modification). I solved the probleme for dbname.links.ini by overriding the links() method in each class file but can't figure out how to do a similar thing for database structure. Maybe it would be possible to use the derivedHookFunctions() or derivedHookVar() in this goal, but I don't know how... Thanks, DidierIs it possible to use DB_DataObject without the dbname.ini file ?