![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam, zaczynam przygode z Code Igniter i mam 2 problemy:
1) robie 1 glowny widok i dziele go na czesci: np. czesc glowna i newsy. Chodzi o to, ze chialbym, aby widok newsy sam pobieral dane w controlera, zebym nie musial sie nim przejmowac, tylko zajmowalbym sie wypelnianiem widoku glowny. Moze byc wiecej blokow, ktore beda wypelniac strone danymi bez mojej ingerencji. Nie wiem czy jasno pisze. 2) Jak wypelniac strone danymi w zaleznosci od wybranego jezyka? tzn mam np tabele w bazie kategoria
i teraz w zaleznosci od wyboru jezyka wyswietla mi dane z pola kategoria_nazwa_pol lub kategoria_nazwa_ang. Prosze o pomoc, najlepiej 'łopatologicznie', jak sie da z przykladem kodu ![]() Ten post edytował basu 16.04.2007, 14:57:57 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 380 Pomógł: 2 Dołączył: 5.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
chialbym, aby widok newsy sam pobieral dane w controlera widok jest generowany na podstawie danych ktore przekazujesz przy jego ladowaniu, sam sobie nic nie pobierze bo nie ma takiej mozliwosci, mozesz natomiast zrobic taki myki w zmiennej $newsy masz wygenerowany wycinek strony ktory zawiera liste newsow, teraz wystarczy przekazac ta zmienna do glownego widoku i w nim wyswietlic box z newsami w odpowiednim miejscu natomiast jesli chodzi o druga rzecz to wydaje mi sie ze nienajgorszym rozwiazaniem bedzie zrobienie czegos w tym stylu:
teraz wystarczy tylko odczytac zmienna okreslajaca jezyk i przepuscic ja przez funkcje sprawdz_jezyk() wynikiem funkcji bedzie zawsze poprawny postfix tabeli z bazy danych, ktory wystarczy przekazac do funkcji ktora laduje dane z bazy. Jest to oczywiscie tylko sugestia jak problem rowiazac :] tez dopiero zaczynam z ci ![]() Ten post edytował maryaan 16.04.2007, 16:58:09 -------------------- Wybierasz się do Zakopanego? Odwiedź Willę Pod Górami. Następnym razem na pewno do niej wrócisz :)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 380 Pomógł: 2 Dołączył: 5.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
nie do konca, $tablica_z_newsami_z_bazy to jedynie taki hmm kontener na smiecie
![]()
w tym momencie widok nie dostaje tablicy $tablica, a jedynie liste zmiennych czyli w tym przypadku $pudelko1, $pudelko2 i $pudelko3. Oczywiscie jako element tego naszego kontenera mozesz wladowac tablice, obiekt czy co Ci tam przyjdzie do glowy -------------------- Wybierasz się do Zakopanego? Odwiedź Willę Pod Górami. Następnym razem na pewno do niej wrócisz :)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Rozumiem to, tylko ze w tym momencie chce wstawic newsy, ktore pochodza z bazy danych.
Wiem jak wypelnic '$tablica_z_newsami_z_bazy danymi z bazy' i wyswietlic ja w widoku, nastepnie przekazujac do glownego widoku. Tylko ze musze wykonac jakas metode klasy, zeby ona ja wypelnila danymi. Jak bede mial 100 klas i do kazdej metody mam podpinac kod ladujacy 'widok_generujacy_liste_newsow' to sie zamecze, bo takich modolow jak newsy moge miec np 20. ![]()
a da sie tak, zebym jakos to uniknac. W proceduralnym kodzie podpina sie jakis plik np news.php i on juz sie zajmie wypelnianiem danych, a ja juz sie nim nie zajmuje. Dopiero zaczynam pisac kod w php5, wiec dajcie znac jak pisze glupoty ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
chętnie bym ci pomógł ale w ogóle nic nie rozumiem z tego co piszesz.
skoro z bazy to zrób sobie model, wczytaj w kontrolerze, a w modelu pobierz dane z bazy i zwróć je. 15 sekund pisania. z tymi widokami nie skumałem w ogóle. załaduj sobie widok np. newsy a w nim wczytaj inne widoki np. header, footer. -------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
to napisze jeszcze raz
![]() dziele strone na 2 czesci. moja strona to portfolio z pracami (dokladniej mozna to zobaczyc na stronie (www.artfly.pl). po lewej mam linki z kategoriami (grafika, strony www, loga) i ta czesc bedzie pobierana z bazy danych, bo klikajac na jakas kategorie pokazuja mi sie prace z tej kategorii w glownej czesci strony. I teraz chodzi mi o to zeby te kategorie wypisal mi to widoku niejako sam. nie wiem jak to zrobic. Wiem ze moge zrobic kontroler, model i widok. Ale wszystkie przyklady sa ladowane jakby do czesci glownej szablonu. A ja chce zeby zrobic kilka takich modulow jak wlasnie te kategorie, czy np newsy lub dowolnie inne. Zeby mi zaladowalo do glownego widoku wszystkie naraz . Chcialbym zeby mi je ladowalo (np kategorie) z kontrolera kategorie i zeby to zrobic raz i sie tym nie zajmowac. Pozniej zajmuje sie inna czescia strony obojetnie jaka, a te moduly laduja mi sie na strone, a ja sie nimi wiecej nie zajmuje. W kodzie procedularnym pisalem po prostu caly modul kategorie w odzielnym pliku kategorie.php i on zajmowal sie wypelnianiem tych linkow z bazy. pozniej tworzylem inny modul tez cos wypelnial na stronie. Pozniej wszystko lacze do jednego pliku i na tym koniec. Na koncu moge sobie dorabiac inne czesci strony, nie zajmujac sie tymi kategoriami czy newsami obojetnie. bo to mi juz chodiz i wypelnia. W CI wszystkie przyklady robi sie pojedynczo (w tutorialach). ja chce wejsc na strone glowna www.artfly.pl i zeby wszystkie widoki pobraly dane i zlozyly mi ta stronke w calosc. Pozniej wchodze np w kontakt i zajmuje sie kontaktem a nie zapelnieniem danych do innych czesci strony. Cos podobnego zanalazlem tutaj, pisza cos o bbcode, ale nie wiem jak to zastosowac http://www.php.rk.edu.pl/forum/topic/1/14/ Ten post edytował basu 16.04.2007, 21:18:23 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
możesz to zrobić na wiele sposobów w zależności od tego jak rozbudowana jest aplikacja i jak dużo kontrolerów będziesz miał etc.
proste portfolio można tak: jeden kontroler, w kontruktorze wywolujesz odpowiednie metody_menuboczne();, _menuprawe(); _innemenu(); itp. więc ładują ci sie zawsze. a w nich pobierasz co potrzebujesz do tych menu. w większych aplikacjach bardziej się sprawdza dodatkowa swoja bliblioteka. na takich samych zasadach ja tworzysz a wywolujesz np. w autostarcie. -------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
wole nie robic tego w 1 kontrolerze, wole nauczyc sie tym drugim sposobem
![]() Jest moze gdzies przyklad kodu, tutka jak to robic? Zalezy mi bardzo na czasie, a najlepiej ucze sie na gotowych przykladach ![]() |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
application/config/autoload.php
wrzucasz biblioteki do załadowania na starcie. application/libraries/mojabiblioteka.php
application/models/nazwamodelu.php
$mojedane w dowolnym widoku wywołanym z dowolnego kontrolera. Ten post edytował normanos 16.04.2007, 21:59:16 -------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 26.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
o to chodzilo. Dzieki wielkie za pomoc
![]() co do drugiego problemu to czesciowo sobie poradzilem, ale znowu napotkalem na problem. Zainstalowalem do CI z wiki 'lang_select' http://codeigniter.com/wiki/Language_Selection/, dolaczylem Native session i wszystko pieknie chodzi. Kazdy kontroler musi dostac plik jezykowy. Wszystko gra i smiga. Zaczalem robic standardowy formularz. kontroler:
widok formularza:
i w language/pl/kontakt_lang.php
po odpaleniu kazal mi dolaczyc plik language/pl/validation_lang.php. Dolaczylem pusty. Teraz wchodzimy na formularz, nie wpisujemy danych i zatwierdzamy. Zamiast standardowych opisow bledow typu "wpisz imie", wyskakuja komunikaty: Unable to access an error message corresponding to your field name. Jak to dopisac zeby wyswietlalo mi poprawnie komunikaty bledow. Moze znacie lepszy sposob na wielojezycznosc stron? |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
brakuje ci tych komunikatow (dales pusty plik). pobierz polski lang z wiki albo poszukaj na forum malej przerobki biblioteki validation aby mod definiowac wlasne komunikaty bledow.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 05:18 |