• Poštovani posjetitelju, za korištenje svih mogućnosti koje InternetZarada Forum omogućuje, predlažemo ti da se registriraš. Besplatno je i tvoja privatnost je potpuno zaštićena. Registracija ti omogućuje pristup svim kategorijama i temama, mogućnost pristupa privicima u postovima (slike, video, tutorijali, uputstva itd), pristup malom oglasniku (Tržnica), direktnu komunikaciju s članovima putem privatnih poruka, automatsko praćenje tema od interesa i još mnogo toga. Veselimo se tvojoj prijavi! ❤️

Moj CMS, saveti?

DocNet

Novi član
Tu od
14 Svi 2015
Postova
9
Pozdrav svima.

Malopre sam počeo da radim svoje univerzalno cms rešenje, što zbog cv-a, što zbog kasnijeg korišćenja ako klijenti ne žele open source CMS rešenje.

Do sada sam uglavnom postavljao svoje jednostavne cms-ove ili sam povezivao sa jumlom.

Sada sam uradio samo deo EER dijagrama, ostaje deo sa pozicijama i menijima, ipak bih voleo da admin ima mogućnost dodavanja i nove meni kartice, to znači da ću morati da radim nešto slično kao jumla. Da ubacim i pozicije za printanje osnovnog članak modula...

Ovu temu ću koristiti kada baš zapnem za nešto gde se ne mogu iščupati, mada što se tiče baza podataka uvek se mogu iščupati, to je moje područje hehe, ali saveti su dobrodošli...

Da pređem na stvar, prvo pogledajte ovaj "basic" eer dijagram.
Administrator objavljuje više članaka, Članak može objaviti veći broj administratora, otud i agregacija između dva entiteta u vidu entiteta AdminČlanak u kom pamtim vreme kada je Admin/Moderator objavio Članak. Kada smo već kod Admina i Moderatora, šta mislite da li da napravim i entitet za Moderatora kao slab entitet (O-M) Administratora. Ili pak da to definišem u samom CMS-u i da takva podešavanja pamtim u jednom XML fajlu?
Tipa moderator može da objavi članak, ali ne može obrisati administratora, samom definicijom baze child ne može obrisati parent, u ovom slučaju Admin bi spustio ključ u Mod-a i Mod nebi mogao da ga obriše.

Više članaka može biti u jednoj kategoriji ili podkategoriji, otud i kategorija spusta ključ u članak, i ovde sam razmišljao o agregaciji jer jedan isti članak ili medij može biti u većem broju kategorija ili podkategorija? Podkategorija je slab entitet Kategorije jer od nje zavisi.

Korisnik objavljuje nula ili više Komentar-a...

I to je u suštini sva logika ovog cms-a, e sada trebaju mi predlozi šta još?
Ubaciću i entitet/tabelu meni i podmeni koji će biti agregacijom povezani sa člankom.

Šta bih još mogao da ubacim što će mi biti kasnije potrebno?
Kontao sam da sva konfiguracija cms-a ide preko XML fajla, slično kao i pozicije u jumli, s tim da ja neću koristiti pozicije nego ću samo "ispisati" ono iz baze na određenoj poziciji.

Imam još dva pitanja,

da li da radim ovo preko CodeIgnitiera, služeči se MVC tehnologijom ili klasičnim OOP načinom? i
da li da napravim sve potrebne procedure za Insert, Update, Delete kao i poglede i funkcije za Select u bazi ili da to radim u programu preko klasičnog $mysqli->query(string) načina? Negde sam čuo da se upiti brže izvršavaju sa procedurama, nego sa upitima.
A i lakše je sve što ima veze sa bazom definisati u bazi, pa samo pozvati u modelu preneti controlerom na pogled i obratno, nego u modelu praviti glomazni kod oko upita...

Hvala.

Evo već znam da mi fale kolone za broj pregleda, lajkove, ban itd, ali to manje više, bitna mi je povezanost i koji su mi entiteti neophodni...
 

Prilozi

  • srkiCMS.png
    srkiCMS.png
    23.5 KB · Pregleda: 536
Ja ne bih posebno radio tablice za korisnika i za administratora (pa ni za moderatora, a kamoli autora).

Dodao bih još jedno polje u tablicu Korisnik, a to polje bi se zvalo npr. userlevel

Onaj korisnik koji ima level:
0 - taj korisnik se registrirao, ali nije još potvrdio email linkom u poruci
1 - potvrđeni korisnik vulgaris
2 - korisnik koji može dodavati clanke, ali ih ne može objavljivati
3 - korisnik koji može dodavati clanke, objavljivati ih, ali i objavljivati tuđe (kako kažeš, moderator)
4 - administrator
5 - super administrator

Ovo sam ovako iz glave nabacio, možeš se malo više informirati kako to rade Joomla i Wordpress.

wordpress ER model (oni podatak o levelu korisnika spremaju u posebnu "wp_usermeta" tablicu)
wordpress roles - level to role conversion
joomla ER diagram (doljnji lijevi kut - korisnik ima 'usertype')
joomla user access levels
 
dev_masta kaže:
Ja ne bih posebno radio tablice za korisnika i za administratora (pa ni za moderatora, a kamoli autora).

Dodao bih još jedno polje u tablicu Korisnik, a to polje bi se zvalo npr. userlevel

Onaj korisnik koji ima level:
0 - taj korisnik se registrirao, ali nije još potvrdio email linkom u poruci
1 - potvrđeni korisnik vulgaris
2 - korisnik koji može dodavati clanke, ali ih ne može objavljivati
3 - korisnik koji može dodavati clanke, objavljivati ih, ali i objavljivati tuđe (kako kažeš, moderator)
4 - administrator
5 - super administrator

Ovo sam ovako iz glave nabacio, možeš se malo više informirati kako to rade Joomla i Wordpress.

wordpress ER model (oni podatak o levelu korisnika spremaju u posebnu "wp_usermeta" tablicu)
wordpress roles - level to role conversion
joomla ER diagram (doljnji lijevi kut - korisnik ima 'usertype')
joomla user access levels

E razmisljao sam o tome ili da napravim specijalizaciju Korisnik, a ispod Mod,Admin,User itd, ali sada vidim da je pametnije ovako.
Gledao sam Jumla dijagram, ali nisam primetio user type :sigh
Hvala.
 
DocNet kaže:
Gledao sam Jumla dijagram, ali nisam primetio user type :sigh
Na slici dolje lijevo, skroz u kutu, tablica jos_users pa usertype.
 
dev_masta kaže:
DocNet kaže:
Gledao sam Jumla dijagram, ali nisam primetio user type :sigh
Na slici dolje lijevo, skroz u kutu, tablica jos_users pa usertype.

Ma znam, provalio sam kada si mi ti napisao gore.
Gledam sada da svaka tabela ima i access kolonu, sto verovatno ogranicava ko moze da popunjava tabelu, kao i rekurzivne veze koje bih mogao primeniti za komentare,kategorije,menije, jer komentar moze imati podkomentar, kategorija podkategoriju, meni podmeni, tako da je to cini mi se odlicno resenje umesto dodavanja "pod"tabela.
 
Poštovanje,

Ako znaš kodirati iz 0 onda ti je to bolje rješenje, nego li koristiti tamo neke codeintigere i sl. Znači, nakači se na mysqli query fazon i opleti. S tim, vodi računa da ti krajnji GET koji ce se koristit u URL-ovima ne budu id i sl. zbog SQL injection-a.

Hvala.

I da, zaboravih reći, važan segment je HTML templating. Kako ćeš nejga ukombinovat? U principu je sve to jednostavno stavit na papir, a kad se krene raditi nešto od 0 onda te malo zaboli "mrsko" ako ti to nije prioritetan poso u životu.

I sam radin na tome i nije loše. More bit da podijelim dio koda ovde, ako je to dozvoljeno.


:D:: ::::
 
Back
Na vrh