1 (edytowany przez marioosh 2008-08-05 13:29:30)

Temat: Panel administracyjny

Witam
to mój pierwszy post tutaj, w sumie ogólnie mało tego ale mam nadzieję, że się rozwinie..

CakePHP jest pierwszym frameworkiem php z którym dopiero się zapoznaję ale dobrze wróży na przyszłość.
Mam do zrobienia witrynkę w php, za pomocą frameworka (pytanie dlaczego akurat cakePHP to temat na inny wątek big_smile ) i dość mało czasu mam na realizację, wobec czego miałbym kilka pytań. Pewnie są lamerskie ale dojście do pewnych rozwiązać to kwestia czasu, a tego mi brak więc liczę, że skorzystam z dobrych praktyk i podpowiedzi.

1. Witrynka ma składać się z kilku modułów, ale ma być jeden panel administracyjny, w którym ustawiane byłyby opcje każdego z modułu, np. ile postów na stronie głównej, Albo tytuł stronki, zarządzanie użytkownikami i tak dalej, Moje pytanie jak najlepiej coś takiego rozwiązać?

Myślałem, żeby zrobić to tak: zrobić panel administracyjny gdzie np. w zakładkach miałbym formularz konfiguracji każdego z modułu,  stworzyć tablicę przetrzymującym dane konfiguracyjne w postaci klucz:wartość. Stworzyć komponent, przez który controllery miałyby dostęp do danych konfiguracyjnych.

2. Auth/Acl - chciałbym zrobić system oparty na grupach i rolach, grupy bardziej logiczne, a role - na nich oparta kontrola dostępu. przypuścmy że mam 4 role: gość, user, poweruser, admin, za pomocą Auth/Acl mogę ustawić aby poweruser mógł zarządać użytkownikami - teraz pytanie: czy za pomocą Auth/Acl będę mógł ustawić aby poweruser mógł przydzielać rolę użytkownika w zakresie gość-user ; tylko admin mógłby dodawać kolejnych poweruserów i adminów. czy też wymyśliłem sobie zbyt wysoki poziom abstrakcji ??

3. Jak mogę zrobić moduły, które będą się powtarzać na (prawie ) każdej stronie (np. menu boczne, albo mały panel logowania), w jaki sposób to wyświetlam na stronie? w view czy w layout?
na razie nie mogę sobie wyobrazić warstw z jakich składa się budowana aplikacja, więc pytam big_smile

4. W ramach aplikacji chciałbym dodać statyczną stronkę, np. z licencją albo coś... czy muszę do niej tworzyć kontrollera i model? czy idzie jakoś obejść się bez tego
na razie tyle, idę dalej czytać dokumentację, może znajdę odpowiedzi, ale mimo wszystko jakby ktoś postarał się odpowiedzieć byłbym wdzięczny... i przyda się następnym.. big_smile

2

Odp: Panel administracyjny

1) Ustaw sobie w config.php

Configure::write('Routing.admin', 'admin');

Zamiast 'admin' moze być cokolwiek. Dzięku temu potem w panelu będziesz mógł tworzyć akcje admin_index, admin_show, admin_edit itp. Więc będziesz mógł zawrzeć całą funkcjonalność panelu nie tworząc nowych kontrolerów.

2) Tutaj ci nie pomoge smile

3) poczytaj o czymś takim jak 'elementy' w widokach.

4) albo PagesController ( poczytaj w api ) albo metodzie render w kontrolerze możesz kazać wyświetlić plik.