Pogledajte određenu poruku
Staro 12. 04. 2010.   #1
djomla_db
niodaklevci
 
Avatar djomla_db
 
Datum učlanjenja: 19.11.2009
Lokacija: BG
Poruke: 8
Hvala: 0
0 "Hvala" u 0 poruka
djomla_db is on a distinguished road
Default Pitanje vezano za ORM

Zdravo!

Muci me jedan problem pa ako moze neko da pomogne ko ima slicnih iskustava.

Vec dugo radim sve svoje projekte sa ADODB active record klasama. U zadnje vreme dosta sam citao doctrine i vidim da za razliku od pocetaka sad je dosta bogatiji sa featurima i dokumentacijom. Pa sam poceo da projektujem CMS ponovo ali sa Doctrinom. Mogu rec, elegantno se postavi ali dosao sam do problema prvog i za sada najgoreg (cak razmisljam da je batalim). Problem su njeni 'behavior'i, da budem precizniji i18n (pretpostavljam da se ovo odnosi na svaki). Potrebna mi je lokalizacija na bilo koji jezik i to se radi sa doctrinom tako sto se kaze actAs: I1i8n odabere se polje i stvar 'resena'.

E, al to meni ne odgovara (tvrdoglav) hocu da bude kako ja 'ocu a ne kako neko drugi to kaze. Zelim da bude i18n oznake tablica i klasa. I kaze meni doctrina (tacnije otvorim klasu i vidim koje parametre prima)

actAs: I18n
className: '%CLASS%i18n' => kaze da klase imaju taj i taj prefix
tableName: '%TABLE%i18n' => odlicno ovako mi i treba a ne kako oni hoce to od mene da bude _translation.

posto radim na postojecim tablicama i bazom recimo da mi se tablica zove pages a druga je pagesi18n

e sad ja generisem modele na osnovu tablice i to fino ne radi. (mogu cak i da dam kod ovde)

Kôd:
class Pages extends BasePages
{

        $this->actAs('I18n', array(
                'fields' => array('title'),
                'className' => '%CLASS%i18n',
                'tableName' => '%TABLE%i18n'
            )
        );
    }

I baca gresku konstatno da fali title i sl. Izludjuje pomalo.

Kod AdoDBa samo mozda malo vise programirao ali brate imao sam skoro potpunu kontrolu nad skoro svime. Ne znam sta mi to revolucionarno pruza koriscenje Doctrine ili bilo kojeg hard core ORMa (ovo bi bilo drugo pitanje).
__________________
My options above
djomla_db je offline   Odgovorite uz citat