Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

CodeIgniter organizacija projekta

[es] :: PHP :: CodeIgniter organizacija projekta

[ Pregleda: 4174 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

corelko

Član broj: 165571
Poruke: 92
31.223.144.*



+6 Profil

icon CodeIgniter organizacija projekta12.04.2015. u 14:56 - pre 109 meseci
Pozdrav svima. Uzeo sam malo da radim sa CI framewrok-om. Moze li neko da preporucu najbolju organizaciju projekta u CI racunajuci da ce nekad nesto morati da se nadorgradi, izmijeni template itd itd. Inace pocetnik sam u radu sa framework-cima pa se unaprijed izvinjavam ako malo "davim" sa ovom temom, ali nisam vidio nigdje na ES da je neko objasnio do detalja ovaj problem. Evo kako sam ja kontao da bi to trebalo da izgleda. ALogicno je podijeliti "front" dio od admin dijela jer za ta dva dijela vazi potpuno drugaciji css! Napominjem da pricam sad o samom Layout-u, kasnije nesto cu o organizaciji samog php koda(Kontrolera i Modela). Da li je ovo dobra organizacija fajlova u root-u hosta:

Code:
+CodeIgniter
  +System
    +2.0
    +3.0
+Aplikacija
  +Verzija1
  +Verzija2


Ovim bih update-ovanjem aplikacije sve na jednostavan proces bilo da se radi o novoj verziji CI ili je pristigao novi izgled same Aplikacije.

Npr. meni je aktuelna aplikacija Verzija2 u zelim da u njoj razdvojim front i admin dio radi jednostavnosti.
Da li je praksa da se u "View" naprave odvojena dva foldera u kome smestam sve vezano za Layout front dijela i Layout admin dijela. Npr ovako nesto:

Code:
+Verzija2
  +Front
     css
     images
     js
     include
     .....
  +Admin
      css
      images
      js
      include
      .....


Izvinjavam se ako sam bio nejasan. Mogu objasniti ako neko nije razumeo samo neka postavi pitanje. Hvala.
 
Odgovor na temu

Tpojka
Ratio, Logic

Član broj: 60114
Poruke: 209

ICQ: 491318095


+33 Profil

icon Re: CodeIgniter organizacija projekta12.04.2015. u 20:42 - pre 109 meseci
Pozdrav, i sam vrlo rado koristim CodeIgniter.
Za takav zahtjev bih predlozio da se pogleda Skeleton, koji dosta toga ima integrisanog u sebi.
Mada je radjen za (posljednju 2.2.0 )verziju 2.
Koristen je ovaj HMVC model i radjen je templating sistem koji dopusta organizaciju CSS i JS fajlova prema modulima.
Sto se tice predstavljene file/folder organizacije, mislim da nije dobro uradjena.
Kao prvo, view dio™ ili bolje receno APPPATH . 'views' lokacija nije vidljiva iz browser-a. Klijent upucuje request controller-u (odnosno router-u) koji poziva fajlove iz pomenute lokacije da generise output.
Sama file/folders organizacija bi trebalo da izgleda nesto poput:

-root
--application/
--system/
--upload/ //ukoliko je potrebno
--assets/
---css/
---js/
---img/
--.htaccess
--index.php

, a moze i:

-root
--application/
--system/
--upload/ //ukoliko je potrebno
--assets/
---admin/
----css/
----js/
----img/
---front/
----css/
----js/
----img/
--.htaccess
--index.php

Na Skeleton sam uputio zbog upoznavanja sa organizacijom fajlova i foldera.
Ali u svakom slucaju bi trebalo prvo razmisljati o 3.0 verziji.
-A Tpojke su Đuro - šta?
-Osnovne jedinice diverzantskih grupa!
 
Odgovor na temu

corelko

Član broj: 165571
Poruke: 92
31.223.144.*



+6 Profil

icon Re: CodeIgniter organizacija projekta13.04.2015. u 14:14 - pre 109 meseci
Hvala na iscrpnom odgovru. Shvatio sam. Sto se tice organizacije fajlova vise mi se svidja ovaj drugi prijedlog gdje je Layout admin i front dela razdvojen. To je dakle jasno.
E sad, sami sablon ide u View aplikacije. Logicno je da se sablon izdijeli na dijelove (npr. heder, menu, content, footer itd..) i tako za oba dijela aplikacije (front i admin). Da li je praksa, ako odaberem ovaj drugi nacin organizacije fajlova koji ste predlozili da u View imam nesto ovako:

Code:
-View
--Front
---include (dijelovi sablona front dijela)

--Admin 
---include (dijelovi sablona admin dijela)


Meni je ovo nekako logicno, mozda i gresim pa me ispravite.

E da @Tpojka poslao sam vam i privatnu poruku pa bih vas zamolio da pogledate. Hvala jos jednom.


 
Odgovor na temu

Panajotov
Programator
Beograd

Član broj: 322930
Poruke: 75



+5 Profil

icon Re: CodeIgniter organizacija projekta13.04.2015. u 14:30 - pre 109 meseci
Mislim da jeste, sto da ne? Kako bi se snasao sa npr 30 stranica u jednom folderu, odgovor je veoma tesko. Tako da, najbolje izdeli po folderima kako zelis i kako mislis da ces se ti ili neko od naslednika snaci u toj aplikaciji. :)

Mozda nevezano za ovu temu, ali kad je vec diskusija o CI, imam jedno pitanje. Kako bi permisije korisnika podelili u kodu. Ako na primer imamo administratora, moderatora. Administrator ima 'svee' privilegije, dok moderator ima samo (npr) dodavanje vesti? Da li cete praviti posebne stranice za administratora, posebne za moderatora ili?


 
Odgovor na temu

corelko

Član broj: 165571
Poruke: 92
31.223.144.*



+6 Profil

icon Re: CodeIgniter organizacija projekta13.04.2015. u 14:42 - pre 109 meseci
Hvala na odgovorima.

Evo vidim vec da ce ovde biti dobre diskusije.
Zašto bi za permisije pravio posebne stranice "za svakoga". Ako administrator vidi "sve" mogućnosti zar ne bi kroz bazu vrlo lako mogao da podelim korisnike u nekolike kategorije i u zavisnosti od kategorije korisnika koja "ulazi" u admin deo dozvoljavam i zabranjujem po potrebi. Ispravi me ako gresim.

 
Odgovor na temu

Panajotov
Programator
Beograd

Član broj: 322930
Poruke: 75



+5 Profil

icon Re: CodeIgniter organizacija projekta13.04.2015. u 14:53 - pre 109 meseci
Mozda se nismo najbolje razumeli. U bazi 'razdelis' korisnike, kako ces prikazati moderatoru samo dugme za dodavanje vesti, a administratoru i ostale dugmice? Ne znam da li je pametno za svako dugme proveravati da li ima privilegiju. Nadam se da razumes/razumete.
 
Odgovor na temu

Tpojka
Ratio, Logic

Član broj: 60114
Poruke: 209

ICQ: 491318095


+33 Profil

icon Re: CodeIgniter organizacija projekta13.04.2015. u 20:02 - pre 109 meseci
Pa to je vec pitanje layout-a. Nisu isti admin i public layout. Admin layout je pozivan iz admin controller-a koji u sebi sadrzi metode, a koje opet controller koji ce pozivati public/user/editor layout ne posjeduje.
Samo razdvajanje funkcija treba izvesti preko parent controller-a u core folderu gdje bi se vrsila provjera permission-a.
Code (php):

class Admin_c extends Administrator_Controller
{
  public function __construct()
  {
    parent::__construct();
  }
}
 

Code (php):

class Public_c extends Public_Controller
{
  public function __construct()
  {
    parent::__construct();
  }
}
 

-A Tpojke su Đuro - šta?
-Osnovne jedinice diverzantskih grupa!
 
Odgovor na temu

[es] :: PHP :: CodeIgniter organizacija projekta

[ Pregleda: 4174 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.