Jump to content
php.lv forumi

Recommended Posts

Posted

Sāku izmantot Codeigniter un radās jautājums:

 

Man ir divu līmeņu horizontāla navigācija + dažiem ir arī trešā līmeņa vertikālā navigācija.

 

Kā ir loģiskie priekš MVC un CI - katrai navigācijas sadaļai savas kontrolieris vai arī pirmā līmeņa navigācijai ir savs kontrolieris, bet otrā līmeņa - tā ir funkcija, savukārt trešā - tas jau sanāk parametrs, vai?

 

Teiksim, man ir "forums -> php -> cms", tad

1) pirmajā varianta būtu kontrolieris "cms" (iespējams arī "forums", kas defaultā nosūta uz php/cms, kā arī "php", kas nosūta uz cms).

2) otrajā variantā būtu kontrolieris "forums", funkcija "php" ar parametru "tips", kura vērtība būtu "cms"?

Posted

Tas nedaudz ir atkarīgs no tā cik sarežgītas (cik daudz koda jādrukā) tās apakšsadaļas ir. Būtu jāizvairās no situācijas, ka kontroliera fails ir tūkstiešiem koda rindiņu garš (normālā sistēmā otrais variants visticamāk ko tādu izraisītu).

 

Es droši vien katrai apakšsadaļai izvēlētos taisīt savu kontrolieri. Ja ir vitāli svarīgi, lai arī adresē parādītos tā sadaļu hierarhija, tad situācijas glābšanai var izmantot CI routēšanas pārrakstīšanas iespējas, vai arī šo lielisko bibliotēku: http://code.google.com/p/ocular/

Posted

Visa lapa, izņemot vienu sadaļu ir ar statisko informāciju. Tādējādi reāli sanāk, ka kontrolierim ir tikai jāpaņem no db (vai config mainīgā) atbilstošos tekstus + varbūt vēl kkas.

Viena sadaļa gan ir sarežģītāka.

  • 4 weeks later...
Posted

Uzskatu, ka Tavs otrais variants ir visprātīgākais, kad veidotos tāda saite - www.example.com/forums/php/cms. Pēc saites lietotājam ar būs viegli orientēties, kur viņš atrodas. :)

Posted

Battery, domāju ka nav labākais veids ceļu līdz lapai norādīt saitē. :) Lietotājam nevajadzētu atšifrēt saiti, lai iegūtu kādu informāciju. Parasti lapas ceļu norāda ar atbilstošu saišu virkni kaut kur virs raksta, nu izkārtojums jau atkarīgs no dizaina, piemēram:

 

Sākums > Ziņas > Jauna PHP versija

 

nu kaut kā tā.

Posted (edited)

Codeigniter pats paredz, ka saite tiek veidota sekojoši www.example.com/klase/funkcija/parametrs1/parametrsN/. Izmantojot Routes.php vai kādu gudrāku risinājumu var paslēpt klasi (ja grib), bet jebkurā gadījumā šai informācijai nevajadzētu būt ļaundarim noderīgai, jo paša ietvara izstrādātāji ir vienojušies par šāda veida piekļuves konvesiju.

Edited by Battery

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...