DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > PHP
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

PHP PHP aplikacije, Smarty, PEAR

Odgovori
 
Alati teme Način prikaza
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
Staro 12. 04. 2010.   #2
LiquidBrain
Milan Cvejic
Wrote a book
 
Avatar LiquidBrain
 
Datum učlanjenja: 05.09.2006
Lokacija: Beograd
Poruke: 1.241
Hvala: 32
73 "Hvala" u 56 poruka
LiquidBrain će postati "faca" uskoro
Pošaljite poruku preko Yahoo za LiquidBrain
Default

Citat:
Originalno napisao djomla_db Pogledajte poruku
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).
kod ti nije dobar,
Prvo actAs metod treba da se zove iz setUp metode, dakle nesto kao:
Kôd:
class Pages extends BasePages
{

        public function setUp()
        {
            parent::setUp();

            $this->actAs('I18n', array(
                'fields' => array('title'),
                'className' => 'Pagesi18n',
                'tableName' => 'pagesi18n'
              ));
    }
Ne znam zasto koristish %CLASS% i %TABLE% svakako ti se ovaj kod ne generise automatski, pa mozes i da upishesh ime...

Daj base klasu da vidimo dal tu fali nesto od polja...

Pozz
__________________
http://weevify.com
LiquidBrain je offline   Odgovorite uz citat
Staro 08. 11. 2010.   #3
vladapopster
novi član
Na probnom radu
 
Datum učlanjenja: 06.11.2010
Poruke: 12
Hvala: 1
1 "Hvala" u 1 poruci
vladapopster is on a distinguished road
Default Doctrine

Doctrine i bez muke
__________________
Webmarket
vladapopster je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Pitanje vezano za PayPal! Agent001 Istine i zablude 6 06. 06. 2010. 15:07
SEO - URL Pitanje Zizi Marketing i SEO 14 17. 07. 2009. 16:42
MYSQL: Kako struktuirati tabele vezano za broj prikaza nekog teksta na stranici? mb_sa SQL baze podataka - Sponzor: Baze-Podataka.net 6 03. 03. 2009. 09:16
CSS pitanje mirko75 Sva početnička pitanja 2 02. 06. 2008. 00:01
Početničko pitanje vezano za pozadinu mirko Sva početnička pitanja 20 20. 11. 2007. 01:27


Vreme je GMT +2. Trenutno vreme je 19:56.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.