![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Rapide Framework
![]() Rapide Framework powstał na bazie rozwiązań stosowanych w kilku frameworkach. Organizację i sterowanie w dużej mierze oparto na Zend Framework. Kierowałem się przede wszystkim prostotą. Mojavi (tym bardziej Symphony) jest moim zdaniem zbyt rozległe. Po całej aplikacji krążą obiekty kontekstów, kontrolera głównego... Nie, nie - to nie jest to, czego szukałem. Całe sterowanie w Rapide powierzono małemu i elastycznemu Front Kontrolerowi. Jądro podzielono na jak najmniejsze części pozwalające w przyszłości na szybką ich wymianę. Na pierwsze spojrzenie Rapide działa identycznie jak Zend Framework. Jednak po głębszym zapoznaniu się z frameworkiem, okazuje się, że Rapide jest znacznie wygodniejsze. Przede wszystkim Rapide poprawnie implementuje widok z MVC. W każdej chwili możemy zamienić widoki, aby prezentowane dane ukazały się np. w formacie CSV. Ponadto wiele czynności zostało zautomatyzowanych, dzięki czemu nie musimy wczytywac konfiguracji do akcji, czy też martwić się o kontrolę dostępu. Cechy frameworka
Kod do pobrania: http://vgm.pl/adrianpawlikpl/rapide/ Tworzenie kontrolera Kontrolery w aplikacji powinny dziedziczyć po abstrakcyjnej klasie Rapide_Controller. W zasadzie framework wymaga, aby kontrolery implementowały interfejs Rapide_Controller_Interface. Katalog kontrolerów definiowany jest w pliku konfiguracyjnym Rapide/config.php. Kontroler musi byź zapisany pod nazwą Kontroler.class.php. Kontroler jest kontenerem dla wszystkich akcji. Dla przykładu: kontroler Nowosci będzie zawierał akcje Dodaj, Pokaz, Usun, Edytuj itd. Klasa kontrolera musi nosić nazwę Controller_Kontroler, natomiast metody będące akcjami - AkcjaAction. Przykładowy kontroler
Teraz wystarczy w przeglądarce wpisać adres: http://TwojAdres.pl/www/?controller=Exampl...;action=Example. Rezultatem pracy frameworka będzie wyżej podany komunikat. Metody klasy Rapide_Controller Kontroler bazowy w Rapide został tak zaprojektowany, aby uprościć i przyśpieszyć budowę aplikacji. Poniższa lista zawiera metody, których warto używać: getParameter($sParameter) Zwraca parametr GET przekazany w adresie do kontrolera. W przypadku braku parametru wzraca null. hasParameter($sParameter) Zwraca wartość logiczną informującą, czy istnieje parametr GET przekazany w adresie. getConfig() Zwraca obiekt konfiguracji dla danego kontrolera. Dane konfiguracyjne pobierane są z tablic php zapisanych w katalogu konfiguracji kontrolerów. getView($sView) Zwraca obiekt danego widoku. Widok pobierany jest z katalogu widoków. getModel($sModel) Zwraca obiekt wybranego modelu. Model pobierany jest z katalogu widoków. getUser() Zwraca obiekt User, który pozwala na zapis danych sesyjnych. getLanguage() Zwraca obiekt języka. Dane językowe dla kontrolera ładowane są wcześniej w pluginie Rapide_Plugin_Language. forward($sController = null, $sAction = null, array $aParameters = array()) Pozwala na określenie następnej akcji do wykonania. Pozostawienie wartości pustych spowoduje forwarodwanie na domyślny kontroler. redirect($sController = null, $sAction = null, array $aParameters = array()) Pozwala wykonać przekierowanie na inną akcję. Pozostawienie wartości pustych spowoduje przekierowanie na domyślny kontroler. Każdy kontroler posiada domyślną akcję Index. Jest ona wywoływana, jeżeli akcja nie zostanie określona. Przykładowe kody Kontroler User - akcja zmiany hasla dla zalogowanego uzytkownika
Widok i szablon widoku dla tej akcji
Jak już wspomniałem - framework napisałem dla siebie. Mam nadzieję, że komuś może się przydać, chociaż w celach edukacyjnych. Pozdrawiam, Adrian J. Pawlik. Ten post edytował Prph 5.11.2006, 19:56:50 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 7.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Świetny framework - podoba mi się... bardzo ciekawe rozwiązania w nim zastosowałeś, gratuluję pomysłów i przemyśleń!
![]() Przeglądam go już troszkę i kilka pytań mi się narzuciło, mianowicie... Jak działa u Ciebie dokładnie: - Access Control List - system kontroli dostępu - mógłbyś podać jakiś przykład w kodzie jak to działa i jak to definujesz w którym miejscu gotowej aplikacji? - interesuje mnie jeszcze działanie łańcucha akcji bo też widzę, że jest ciekawie rozwiązane... czy dzielisz akcje na akcje logiczne i akcje widoki? Czy po prostu gdy ostatnia akcja się zakończy, to przekazuje ona dane do uaktywnionego przez nią widoku. Jak to u Ciebie dokładnie wygląda z akcją ostatnią wyświetlającą wynik działania akcji wcześniejszych? Może też jakiś przykładowy kod. - jaka jest dokładna różnica między metodą forward a redirect klasy Rapide_Controller, czy nie lepiej zastosować tylko samą metodę forward? Możesz mi wytłumaczyć, hmm... w jakiś prosy sposób cel tego, bo do końca nie rozumiem tej kwestii. Ten post edytował Quickest 7.09.2006, 14:17:42 |
|
|
![]()
Post
#3
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Wyglada praktycznie tak samo jak Zend Framework. Kod jest ładnie napisany, no ale jest bardzo wzorowany na wspomnianym framework'u.
@Quickest: Pewnie tak samo jak w ZF, forward zmienia kacje a redirect zmienia akcje z kontrolerem. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Rzut na sam widok katalogów wygląda jak Zend.
Powiem szczerze, że też wzoruje się na zorganizowaniu Zenda, jednakże ja piszę trochę inaczej. Dopisuje obiekty których wyżej wspomniany framework nie posiada. Mam też inny styl. Upraszczam go maksymalnie. -------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Jak działa u Ciebie dokładnie: - Access Control List - system kontroli dostępu - mógłbyś podać jakiś przykład w kodzie jak to działa i jak to definujesz w którym miejscu gotowej aplikacji? System kontroli prezentowany jest przez klase ACL. Klasa acl przyjmuje definicje dostepu, ktore reprezentowane sa przez klase ACL_Access. Wszystko przeprowadza plugin: Rapide_Plugin_ACL. Jego dzialanie jest nastepujace: 1. Pobierz informacje z konfiguracji kontrolera jakie grupy maja miec dostep. 2. Dodaj definicje Access do ACLa 3. Pobierz informacje, ktore sa zablokowane. 4. Dodaj definicje do ACLa. 5. ACL sprawdza czy obecny uzytkownik ma prawa do danej akcji, jezeli nie - zwraca akcje Error403. Przejrzyj kod ow plugina - wszystko jest ladnie zaprezentowane. Pamietaj, ze konfiguracja kontrolera trzymana jest w katalogu Configs jako plik z tablica php. - interesuje mnie jeszcze działanie łańcucha akcji bo też widzę, że jest ciekawie rozwiązane... czy dzielisz akcje na akcje logiczne i akcje widoki? Czy po prostu gdy ostatnia akcja się zakończy, to przekazuje ona dane do uaktywnionego przez nią widoku. Jak to u Ciebie dokładnie wygląda z akcją ostatnią wyświetlającą wynik działania akcji wcześniejszych? Może też jakiś przykładowy kod. Nie mam podzialu na akcje. Jezeli ktos wyswietli widok a nastepnie ustawia kolejna akcje - na ekranie dostanie wynik 2 akcji. O tym nalezy pamietac. Jezeli korzystamy z widoku, to w chwili kiedy chcemy go wyswietli, zwyczajnie zwracamy go. Zobacz przykladowe kody - tam zwracam widok, a Rapide go wyswietla. - jaka jest dokładna różnica między metodą forward a redirect klasy Rapide_Controller, czy nie lepiej zastosować tylko samą metodę forward? Możesz mi wytłumaczyć, hmm... w jakiś prosy sposób cel tego, bo do końca nie rozumiem tej kwestii. Forward: Przekaze tzw. Token (blasa zawierajaca kontroler, akcje i parametry akcji). Rapide uruchomi nastepna akcje. Nie nastapi przeladowanie strony. Redirect: Nie przekazuje tokena - wysyla naglowek Location do przegladarki. Przegladarka wtedy wlaczy inna strone. Kiedy stosowac jedno, kiedy drugie? W sumie i jedno i drugie mozna stosowac zawsze. Redirect powodue przeladowanie strony, forward nie. Ale po redirect na pasku przegladarki mamy adres obecnej akcji (tej na ktora przekierowalismy). Po forward na pasku znajduje sie ten sam adres - starej akcji. @hwao, @Turgon: Tak, jak wspomnailem wzorowalem go na Zend Framework. Oto powody: 1. Struktura katalogow - swietne rozwiazanie, latwy __autoload, 2. Male, elastyczne klasy 3. Te klasy wspoldzialaja ze soba naprawde luzno. Wcale nie oznacza, ze Rapide jest skopiowanym kodem z Zenda. Wiele kodu sie zgadza, a jednak nie wzorowalem sie na Zend. Na pewno zaczerpnalem pomysly z: Front kontroler, dispatcherem, pluginami i konfigiem. No pomysl na uzycie helperow takze zobaczylem w Zend. W zasadzie napisalem helpery, a pozneij zobaczylem ze w Zend jest to zrobione niemal idenycznie. Pozdrawiam, Adrian. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 487 Pomógł: 7 Dołączył: 7.01.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Przede wszystkim - brak jakiejkolwiek dokumentacji w kodzie strasznie utrudnia jego przeglądanie.. pomijam fakt, że póki co jeszcze brakuje przykładowej aplikacji
Rapide Framework powstał na bazie rozwiązań stosowanych w kilku frameworkach. Organizację i sterowanie w dużej mierze oparto na Zend Framework. Kierowałem się przede wszystkim prostotą. Mojavi (tym bardziej Symphony) jest moim zdaniem zbyt rozległe. Po całej aplikacji krążą obiekty kontekstów, kontrolera głównego... Nie, nie - to nie jest to, czego szukałem. Kontekst. Jeden kontekst. W Mojavi 3.0 kontekst był singletonem. W 4.0 nie było go wogóle, w jego miejsce był użyty ServiceLocator. Całe sterowanie w Rapide powierzono małemu i elastycznemu Front Kontrolerowi. Jądro podzielono na jak najmniejsze części pozwalające w przyszłości na szybką ich wymianę. To niewątpliwa zaleta. Widziałem, że używasz interfejsów w miejsce klas abstrakcyjnych. Troche mnie dziwi i zaskakuje konwencja nazewnicza i aż takie wyróżnienie interfejsów. Z mojego punktu widzenia nie ma większego sensu aż tak rozbijać nazw, bo tworzą się przez to strasznie długie łańcuchy. Czy nie lepiej użyć Rapide_Router zamiast Rapide_Router_Interface? Przede wszystkim Rapide poprawnie implementuje widok z MVC. W każdej chwili możemy zamienić widoki, aby prezentowane dane ukazały się np. w formacie CSV. Widok widokiem, implementacji MVC jest wiele. ![]() Co do Apletów - rozważyć należy czy to jest element widoku? Myślę, że Aplet jest mimo wszystko częścią, która jest bardziej zbliżona kontrolerowi. Dlaczego? W chwili obecnej decyzję o tym, co ma się stać z Apletem pozostawiasz widokowi. To niedobrze, zgodnie z filozofią OOP obiekt powinien wiedzieć sam co ma ze sobą zrobić. Rozważ to czy nie użyć "layoutu" w połączeniu z rejestrowaniem Apletów podatnych na zdażenia. W Javie jest taka technologia, która zwie się Portlety. Jest to rozszeżenie a właściwie zawężenie Servletów. Na portlecie można wykonać kilka akcji - hide/show, valid etc. Ponadto wiele czynności zostało zautomatyzowanych, dzięki czemu nie musimy wczytywac konfiguracji do akcji, czy też martwić się o kontrolę dostępu. Z tym, że póki co przykładów brak ![]() [*]Rapide_User Klasa danych sesyjnych. Umożliwia autentyfikacje użytkownika oraz składowanie danych w sesji. Zastępuje standardową tablicę $_SESSION. Umożliwia stosowanie handlerów, dzięki czemu sesja może być przechowywana w bazie danych. To nie jest poprawne podejście. User w Mojavi to nie jest handler sesji. To są dane obecnego użytkownika, jego sesja. To, jakiego handlera użyje programista nie powinno być zależne od frameworka. Fakt, framework może oferować taką funkcjonalność, ale nie w tak ścisłym związku z sesją. [*]Rapide_ACL Access Control List - system kontroli dostępu. Pozwala na definiowanie grup mająych dostęp (lub nie) do poszczególnych kontenerów (akcji). Przykład? [*]Rapide_Database_MySQL Sterownik bazy danych MySQL dostarczający prosty i szybki w użyciu interfejs zarządzający danymi w bazie. Myślę, że w chwili obecnej tworzenie kolejnego poziomu abstrakcji do bazy danych to pomyłka. W chwili, gdy PDO jest i na pewno zostanie powinieneś bardziej się skupić na jego rozszeżaniu. Ponadto PDO jest znacznie szybsze niż natywne funkcje php. [*]Rapide_Language Prosta klasa języka. Dane przechowywane są w tablicach php. A może obsługa gettexta? [*]Rapide_Validator Szereg klas z rodziny Rapide_Validator dostarczaja prostych i skutecznych mechanizmów walidacyjncyh dla danych. Przykład? Konfiguracja? [*]Rapide_Form Klasa umożliwiająca szybki dostęp do danych przesłanych za pomocą formularzy. Obecnie bardzo skromna. [/list] Przykład? Inna sprawa to to, że nie ma sensu wiązać się aż tak bardzo z tą klasą. Dlaczego? Lepsze jest dostarczenie mechanizmów, które ułatwiają prezentacje błędów niż wiązanie widoku z formularzem. Po co mi klasa, która tylko i wyłącznie tworzy mi input? Po to by określić validator? Wolę to wyłączyć do oddzielnego pliku i tam to trzymać, tak bym mógł w jednym miejscu zmieniać zasady sprawdzania np nazwiska. Mam nadzieje, że te uwagi będą dla Ciebie przydatne i dzięki nim Twój framework stanie się lepszy. Pozdrawiam, -------------------- Łukasz Dywicki
Independent Java and open source software consultant. Blog - Java, OSGi, integracja oprogramowania.. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 7.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nadal nie rozumiem, tych praw dostępu, może dlatego, że pierwszy raz mam z tym do czynienia...
Jak wygląda taka konfiguracja pliku kontrolera? ![]() Przypuśmy plik konfiguracyjny kontrollera z przykładu: np. /application/Config/Controller/example.php
Tak wygląda przykładowy plik konfiguracyjny? ![]() ![]() hmm... może za dużo nad tym siedzę i mam już mętlik w głowie i wszystko mi się miesza. Mianowicie nie rozumiem jednej rzeczy. ... na podstawie jakich danych user jest identyfikowany czy może mieć dostęp do danej metody? Jak rozumieć metody: isAuthenticated() oraz setAuthenticated() w klasie Rapide_User ![]() Czy one nie powinny być wywoływane w trakcie sprawdzania danych user'a o zalogowaniu? ![]() Albo może inne pytanie... jeżeli autoryzacja się nie powiedzie to przekierowujemy usera na akcję z formularzem logowania? ![]() Ehh... wszystko już mi się to miesza jak widać ![]() ![]() Ten post edytował Quickest 7.09.2006, 18:21:55 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Wszystko przez to ze nie udostepnilem dokumentacji. Nie umiem pisac dokumentacji :/
Konfiguracja kontroli dostępu Konfiguracja jest zapisywana w pliku konfiguracyjnym kontrolera. Domyslnie jest to application/Config/Controller/Nazwa.php Przykladowy plik wygląda następująco:
W tym przypadku dostęp będą mieli użytkownicy którzy posiadają grupy admin i moderator, ale nie posiadają grupy nieproszony_gosc. Czyli np. jezeli mamy uzytkownika Adrian z grupą moderator, to on uzyska dostęp. Jeżeli mamy użytkownika Joasia z grupami admin i nieproszony_gosc, to Joasia nie dostanie dostępu. Autentyfikacja uzytkownika odbywa sie w klasie Rapide_User. Za pomoca metody isAuthenticated() klasa informuje, czy użytkownik sie zalogował (o tym za chwile). Ponadto metoda getGroups zwraca tablice z grupami, jakie ma użytkownik. Można zdefiniować, aby dana akcja wymagała jedynie zalogowania użytkownika. Czyli nie musi ustawiać jakie grupy mają dostęp. Wystarczy wówczas zapisać taką konfigurację:
Wartosc Security moze byc dowolna. Wazne zeby sekcja Security byla utworzona. Oczywiście, wszystko nabiera sensu w chwili, kiedy użytkownik się zaloguje. Niżej przedstawiam akcję logowania:
Ostatnie linie akcji Login przedstawiaja sposob autentykacji użytkownika oraz ustawienie dodatkowych informaacji (np imie i nazwisko). |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 7.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Teraz już wszystko jasne jak słońce, gdy zobaczyłem kod
![]() Zaczyna mi się coraz bardziej podobać ten framework :roll2: Jeszcze dwa pytania jakie mi się nasuwają to: [*]Obsługa pomocników i appletów w widoku dzięki czemu szybko zamieścimy w aplikacji stałe elementy (takie jak menu) w pełni funkcjonalne (funkcjonalność zbliżona do kontrolera). no właśnie... a interesują mnie jak zamieścić stałe elementy typu np. pytania ankiety itp. tzn. jak dokładnie działają Applety, jak są obsługiwane? ![]() ![]() I kolejne pytanie z serii "sto pytań do twórcy"... w którym miejscu wykorzystujesz Rapid_Log w frameworku i też może mały przykład? |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
W szablonie mamy możliwość używania tzw. pomocników. Pomocnicy, jak wskazuje nazwa, pomagają nam w generowaniu szablonu. Pomocnikiem może być np. metoda generująca ładną datę, albo przycisk.
W Rapdie pomocnicy są obiektami. Ich klasy znajdują się w katalogu Rapide/View/Helper/. Dostep do pomocnika jest następujący:
Url jest pomocnikiem prosto z Rapide. Pierwszy parametr, to kontroler, drugi akcja, a trzeci to tablica asocjacyjna parametrow. Wynik bedzie nastepujacy: W ten sposob mamy pewnosc ze zawsze wygenerujemy poprawny adres url, zgodny z naszym Routerem (Router jest obiektem, ktory wyciaga z adresu nazwe kontroler, akjce i parametry - czyli parsuje przejazany adres url). Jak tworzyc wlasne klasy pomocnikow? 1. Utworz plik o nazwie Pomocnik.class.php w katalogu Rapide/Rapide/View/Helper lub application/View/Helper/. 2. Nazwa klasy pomocnika musi byc w formacie View_Helper_Pomocnik. 3. klasa musi posiadac metode execute, do ktorej przejazane zostana argumenty. Przyklad pomocnika
A i dodam, ze helper zapisany w katalogu Rapide, nie aplikacji musi miec nazwe klasy w formacie Rapide_View_Helper. Aplety Do osadzania stalych elementow, jak menu, sonda etc uzywa sie apletow. Aplet ma funkcjinalnosc zblizona do kontrolera - ma dostep do widoku, modelu, konfiguracji, Usera (sesji) i jezyka. Aplety zapisujemy podobnie jak helpery, ale tylko w katalogu application/View/Applet/ Plik musi nazywac sie MojAplet.class.php. Nazwa klasy: View_Applet_MojAplet. Przykladowy aplet:
NAlezy pamietac, ze Aplet nie wyswietla szablonu - zwraca go metoda Fetch. Aplet ma podobne metody jak kontroler. Aplety dzidziczymy z Rapide_View_Applet i polecam zapoznac sie z ta klasa - jest prosta, wiadac metody. Konfiguracje Apletu zapisujemy tak jak kontrolera, ale w katalogu Config/Applet/ Dlaczego stosuje tutaj setTemplate? Normalnie powinienem zrovic to w widoku, bo co interesuje Kontrolera jaki jest szablon. nie on wyswietla dane, tylko widok i to widok powinien wiedziec. Ale w przypadku apletow mozna tak zrobic, bo: 1. Aplety i tak najczesciej beda HTML. 2. Po co robic 10 widokow, mozna zrobic jeden Applet i ustawiac w nim szablon. 3. Aplet jest na tyle mala czescia aplikacji, ze mozna w nim ustawiac szablon - dla prostosty. Dodam, ze aplet ma jedna metode - Execute i to ona zosanie wywolana. Z szablonu aplet wywoluje sie nastepujaco:
Pozdrawiam, Adrian. Ten post edytował Prph 8.09.2006, 09:08:36 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
A tak na raty skaczac po plikach
![]() form.class.php
array_map" title="Zobacz w manualu php" target="_manual - piszac frame'a przydaje sie b.dobra znajomosc samego php File.class.php - kontrolujesz czy $_FILES zawiera dany klucz - czyli z klasy formularza mam zwracac wartosc o niestniejacym indeksie ![]() ![]() class Rapide_Util_Syntaxer_Php - z php wywalili f-cje highlight_ ![]() ![]() Raz z kodzie stosujesz array_key_exists raz isset - zdecyduj sie ![]() Ten post edytował NuLL 9.09.2006, 02:04:26 -------------------- Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
array_map" title="Zobacz w manualu php" target="_manual - piszac frame'a przydaje sie b.dobra znajomosc samego php Racja, jest array_map. Zapomnialem o nim ![]() File.class.php - kontrolujesz czy $_FILES zawiera dany klucz - czyli z klasy formularza mam zwracac wartosc o niestniejacym indeksie ![]() ![]() Jezelu juz to NOTICE, ale nie bardzo Cie rozumiem. piknie przy poraniu, czy przy sprawdzaniu? Przy tym drugim na pewno nie piknie. class Rapide_Util_Syntaxer_Php - z php wywalili f-cje highlight_ ![]() ![]() A tu mnie zaskoczyles (mile). O tym nie wiedzialem. Ciekawa funkcja, chociaz piszac cos wlasnego mam kontrole nad kolorami. Raz z kodzie stosujesz array_key_exists raz isset - zdecyduj sie ![]() Tak wiem. Jest jeszcze kilka rzeczy w ktorch nie jestem konsekwentny, ale to oczywiscie jest do poprawy. Dziekuje za uwagi NuLL. Pozdrawiam, Adrian. |
|
|
![]()
Post
#13
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Rapide_Util_Syntaxer_Php
Zaskoczyłeś mnie... rozumie sens pisania takiej funkcji do SQL (ostanio taka pisalem) ale dla php? php udostepnia 2 mechanizmy, jeden to tokenizer a drugi to wyzej wspomniany highlight_string/file w 1 mozesz dodolnie pokolorowac, w 2 masz tez sporo pole manewru, gdyz mozesz ustawic sobie jaki chcesz kolor (tylko tam masz juz pare sekcji). Cytat Raz z kodzie stosujesz array_key_exists raz isset - zdecyduj sie ![]() isSet" title="Zobacz w manualu php" target="_manual() jest sporo szybszy (pare razu) od array_key_exists" title="Zobacz w manualu php" target="_manual() |
|
|
![]()
Post
#14
|
|
![]() Grupa: Przyjaciele php.pl Postów: 790 Pomógł: 7 Dołączył: 6.02.2003 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Prph) A tu mnie zaskoczyles (mile). O tym nie wiedzialem. Ciekawa funkcja, chociaz piszac cos wlasnego mam kontrole nad kolorami. A w highlight nie masz? Poza tym Twoja klasa na pewno robi to dużo wolniej niż funkcja. -------------------- Michał Płachta
Warsztat: Mac OS X Leopard, PostgreSQL, Text Mate, Retrospectiva + SVN |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
@hwao: dzieki za informacje. Mialem pozniej zabrac sie za przetesotwanie obu funkcji.
@seaquest: w wolnej chwili zapoznam sie highlightem. Jak wspomnialem po prostu nie wieedzialem, ze w php jest taka funkcja. Chociaz cos kojarze. No nie wazne... zapomnialem o niej. Dziekuje za informacje. Adrian. |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 504 Pomógł: 2 Dołączył: 31.03.2006 Skąd: Londyn Ostrzeżenie: (0%) ![]() ![]() |
Ja am takie pytanie:
Tutaj odwolujemy sie do metody klasy rapide jak do metody statycznej
A tak wyglada deklaracja tej metody:
Metoda nie jest zadeklaroweana jakos attyczna, a jednak odwolujesz sie do niej jak do statycznej. Co pominalem ? I nastepne: Tutaj jest kawalek routera:
Jesli nie jest podana akcja w URLu albo akcja jest bledna ustawiana jest akcja index. Tutaj mamy zragment controllera
I deklaracja forward
Z tego co widze, to jesli forward jest pusty to poleci defaultowy kontrolelr z akcja index. Akcja index robi pusty forward ? powinno sie zapletlic, co znow pominalem ![]() Ten post edytował thornag 11.09.2006, 12:51:19 -------------------- "Wizja czasu jest szeroka, lecz kiedy sie przez nia przechodzi, czas staje sie waskimi drzwiami"
![]() |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Ad1. Przeoczenie. Powinno byc static. Dzieki.
Ad2. Nie zapetli sie. Wybierze kontroler Index, akcje index. Jezeli akcja nie zostala okreslona wybierze domyslnie index. Ta jest definiowana domyslnie w bazowej klasie kontrolera i forwarduje na domyslny kontroler. Wymagane jest aby kontroler index mial zdefionowana wlasna metode indexAction. Adrian. |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 426 Pomógł: 1 Dołączył: 2.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Prph a mógłbyś wyjaśnić bardziej działanie klasy Rapide_View_Html_Extended, kiedy jest wywoływana, zasada jej działania itp
![]() Pozdrawiam |
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Widok rozszerzony sluzy do dekorowania tresci. Wezmy pod uwage taki przyklad:
Mamy stopke, naglowek i menu boczne. Nasza tresc wyswietlana jest w srodku (taki standardowy przyklad). Wiadomo, ze widoki uzywaja szablonow (w Rapide sa to szablony php). Zalozny, ze mamy akcje Pokaz nowosci oraz dodaj nowosc. Nie byloby wygodnie, gdyby kazdy ten szablon byl postaci: W tym celu uzyjemy widoku rozszerzonego. Utworzymy szablon glowny o nazwie Main.php. Jego zawartosc bedzie taka jak przedstawiona wyzej. W miejscu, gdzie jest zawartosc wyswietlamy zmienna $this->content. W rezultacie nasz widok zostanie udekoroweany o szablon Main.php. Nazwa tego szablonu zdefiniowana jest jako stala w samej klasie widoku. Przyklad naszego widoku:
Ponadto szablon dekorujacy mozemy okreslic metoda setMainTemplate($nazwa). Szablony akcji moga potrzebowac zaladowac css lub javascript. Sluza do tego helpery css i js:
Wybrane pliki musza znajdowac sie w katalogu szablonu odpowiednio w css/ i js/ Dodam jeszcze, ze widok rozszerzony nie jesy wykonywany w jakis inny sposob. Po prostu programista swoj widok nie dziedziczy po Rapide_View_Html a po Rapide_View_Html_Extended. Pozdrawiam, Adrian. Ten post edytował Prph 17.09.2006, 18:51:21 |
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 30.06.2006 Skąd: okolice Warszawy Ostrzeżenie: (0%) ![]() ![]() |
Czy jest jeszcze jakieś miejsce skąd można pobrać Rapide framework. Pytam ponieważ link podany w sygnaturze prph jest 'nieaktualny'
|
|
|
![]()
Post
#21
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Przepraszam, za zly adres - skocznczyl mi sie termin serwera. Nowy adres (tymczasem) http://vgm.pl/adrianpawlikpl/rapide/ Pracuje nad Rapide 0.3. Niestety mam teraz troche pracy na uczelni i w... pracy ![]() Pozdrawiam, Adrian. |
|
|
![]()
Post
#22
|
|
![]() Grupa: Zarejestrowani Postów: 54 Pomógł: 0 Dołączył: 25.09.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Przeglądając kod wywnioskowałem, że obsługa formularzy odbywa się w sposób: 1) Kontroler, a właściwie jego akcja tworzy obiekt klasy Rapie_Form za pomocą operatora New. 2) Następnie zwraca za pomocą metody getView() obiekt danego widoku. 3) Konstruktor danej klasy widoku wywołuje metodę setTemplate(), która otwiera szablon. 4) W szablonie znajduje się formularz: 5) Po dane z formularza przechwyci router i kieruje do klasy Rapie_Form 6) Dostęp do tych danych ma akcja kontrolera z pkt. 1 za pomocą metod klasy Rapie_Form Tylko nie wiem czy moje myślenie jest prawidłowe Pozdrawiam Darektbg -------------------- skocz.org - system skracania linków
|
|
|
![]()
Post
#23
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Świetnie, ale gdzie w Applecie dostęp do modelu?
|
|
|
![]()
Post
#24
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
@darektbg:
Tak mniej wiecej to wyglada. Pracuje nad dokumentacja i tutorialami dla Rapide. Niestaty, jak juz wczesnij na forum wspomnialem - mam teraz ciezki okres na uczelni i jedyne sen moge poswiecic na pisanie dokumentacji ![]() @envp: getModel(). W wersji 0.3 (dostepnej na svn: http://code.google.com/p/rapideframework/source) mozna uzywac kontrolerow jako apletow (nazwa zmieniona na pluginy widoku). Sluzy do tego helper plugin:
Funkcjonalnosc pluginu jest oczywiscie taka jak kontrolera, tylko oczywiscie forwardowanie nie dziala. Jak juz wspomnialem - pracuje nad dokumentacja i strona frameworka. Pozdrawiam, Adrian. |
|
|
![]()
Post
#25
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Zauważyłem pewną nieścisłość - aplet wywoływany z kontrolera nie podlega 'Plugionwaniu' co może eliminuje wyświetlanie np. sondy dla wybranej grupy userów...
|
|
|
![]()
Post
#26
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Owszem, pluginy nie sa obslugiwane. Ale IMHO to nie jest potrzebne. Wczesniej myslalem, że moze uzycie jezyka bedzie trudne poniewaz pliki jezykowe dla danej akcji ladowal plugin Language. Obecnie Obiekt Language jest na tyle elastyczny i samowystarczalny, ze nie musimy nic ladowac. Wystarczy odwolac sie do jezyka przez metode get obiektu Language:
Wynikiem bedzie pole Error_Name z tabeli jezyka z pliku Add z katalogu User. Pozdrawiam, Adrian. Witam, Rapide zaczyna rozwijac sie coraz bardziej (pomimo braku mojego wolnego czasu). Od jakiegos czasu pracuje nad wersja 0.3. Zmiany jakie nastapily w stosunku do wersji 0.1, to: 1. obiekt Language - teraz bardziej elastyczny. Dynamicznie laduje pliki jezykowe w trakcie odwolania sie do jezyka. Dzieki temu nie trzeba uzywac pluginu Language Front Kontrolera, a ponadto jezyk jest dostepny teraz dokladnie z dowolnego miejsca aplikacji. Wczesniej praktycznie tylko kontrolery oraz aplety moglu go uzywac. 2. aplety = pluginy widoku - przede wszystkim zmiana nazwy aplety na pluginy widoku. Ponadto pluginy sa nadal dostepne we frameworku, ale nie ma juz samej klasy pluginow. Pluginy byly bardzo podobne do kontrolerow, wiec uzywa sie kontrolerow w tym celu. Oczywiscie w przypadku pluginow nie mamy mozliwosci skorzystania z forwardowania, ale to nie jest nam potrzebne. Pluginy laduje helper "plugin". Pierwszy parametr to nazwa kontrolera, drugi - nazwa akcji, ktora nie jest obowiazkowa (zostanie uzyta akcja Index). 3. pelna obsluga pluginow w Front kontrolerze - takze dla preDispatchLoop, jak i dla postDispatchLoop. 4. niewielkie zmiany w obsludze MySQL - glownie zmiany nazw metod. 5. Walidatory - glowny walidator (Rapide_Validator) otrzymal metody do sprawdzania poprawnosci liczb, przez co walidator sluzacy do tego calu zostal usuniety. Zostala uruchomiona strona frameworka: Rapide.pl. Obecnie nic, oprocz adresu do zrodel, tam nie ma. Chcialem podziekowac Panu Jakubowi Kozickiemu za zasponsorowanie domeny. W czasem postaram sie zamiescic tam jakas dokumentacje i tutoriale. Pozdrawiam, Adrian. |
|
|
![]()
Post
#27
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Czy ktoś kto korzysta z svn mógłby pobrać nanowszą wersja i udostępnić w zipie ?
-------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]()
Post
#28
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
A tak trudno w koncu zaczac korzystac z svn'a? svn + tortoise svn i jazda.
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#29
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Czy ktoś kto korzysta z svn mógłby pobrać nanowszą wersja i udostępnić w zipie ? W tar.gz: http://vgm.pl/rapide/snapshot/ Pozdrawiam, Adrian. |
|
|
![]()
Post
#30
|
|
Grupa: Zarejestrowani Postów: 1 190 Pomógł: 27 Dołączył: 23.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- ”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335) |
|
|
![]()
Post
#31
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Wyslalem nowe.
Adrian. Wczoraj poprawilem kilka bladow zgloszonych przez Kube Kozickiego. Najczesciej byly to "literowki", no i same pluginy nie dzialaly zbyt dobrze. Poprawki oczywiscie dostepne na SVN. W zamieszczonym archiwum takze sa poprawkil Pozdrawiam, Adrian. |
|
|
![]()
Post
#32
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
a masz moze przyklad aplikcji zbudowanej za pomoca Rapide?
i jeszcze takie pytanie czy dodawanie jakis tekstow w szablonie musi byc takie dlugie?
nie mogloby byc tak ze jezeli ladujesz jakis widok to razem z nim ladujesz plik z tlumaczeniami, albo pobierasz odpowiednie tlumaczenia z bazy otrzymujac tablice ktorej mozesz juz normalnie uzywac w szablonie.
moze da sie tak? Ten post edytował AxZx 3.01.2007, 16:30:37 -------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#33
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
a masz moze przyklad aplikcji zbudowanej za pomoca Rapide? O ile Rapide jest w zasadzie skonczone (framework gotowy, ale wszystko wychodzi dopiero w praniu), to dokumentacji i przykladow nadal brak. Do projektu dolaczyl sie Jakub Kozicki, ktory obiecal pomoc przy dokumentacji. Wiem, ze pisze teraz projekt na Rapide. Moze uda mi sie go przekonac do udostepnienia fragmentow kodu. Ja sam pisalem jakis czas temu Newsletter. Nie zostal ukonczony, popniewaz byl jedynie proba frameworka. Problem teraz jest taki, ze nie jest kompatybilny z najnowsza wersja Rapide, w ktorej nieco zmienilismy API. Przede wszystkim usuniecie apletow na rzecz kontrolerow, ktore mozna osadzac w szablonie, jako pluginy widoku (np. kontroler Menu, akcja Administrator wyswietla w danym miejscu menu administratora). i jeszcze takie pytanie czy dodawanie jakis tekstow w szablonie musi byc takie dlugie?
Oczywiscie, ze nie musi... Taki efekt jest uzyskany przez mocny podzial plikow jezykowych. W zasadzie kazda akcja zawiera wlasny plik. Nie jest to jednak narzutem ze strony Rapide. Mozna bez problemu wszystkie tlumaczenia zamiescic w pliku nazwaJezyka.php w katalogu Language/. Mozna tez inaczej rozmiescic pliki jezykowe, np: Language/ Polish/ Nowosci.php Uzytkownicy.php Teraz wystarczy:
Zaleta Language z Rapide jest elastytcznosc. Nie musimy martwic sie o ladowanie jezykow. Jezeli odwolujemy sie do jakiegos klucza w jezyku, a on nie istnieje, Rapide sprobuje odnalesc pliki jezykowe dla tego klucza. Kolejne odwolania juz nie powoduja poszukiwania pliku, bo jest on zaladowany. Wczesniej odpowiedni plugin frontkontrolera byl odpowiedzialny za ladowanie plikow jezykowych. W praktyce okazalo sie to malo wygodne. Naklonie Kube Kozickiego, aby pomagal rozwiazywac problemy z Rapide. Sam zapoznal sie z Rapide, przeczytal dokladnie kod, zglosil kilka poprawek, kilka ulepszen. Jego porady moga byc naprawde cenne. Pozdrawiam, Adrian. |
|
|
![]()
Post
#34
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Czy Rapide ma aspiracje (i plany) stać się poważnym frameworkiem czy zostanie jednoosobowym prywatnym projektem (jakich wiele)?
-------------------- |
|
|
![]()
Post
#35
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Hm z tego co wiem to tworzą go 2 osoby, dodatkowo kilka osób udziela wsparcia w postaci znajdowania bugów w kodzie. Poza tym ile frameworków stało się poważnymi w ciągu dwóch meisięcy ?
|
|
|
![]()
Post
#36
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Czy Rapide ma aspiracje (i plany) stać się poważnym frameworkiem czy zostanie jednoosobowym prywatnym projektem (jakich wiele)? Ma plany i aspiracje. Obecnie tworza go 2 osoby. Ja - Adrian Pawlik oraz Jakub Kozicki. Wszystkie osoby chetne do rozwoju frameworka sa bardzo mile widziane. W najblizszych planach jest przede wszystkim stworzenie dobrej dokumentacji, przykladow aplikacji, tutoriali oraz samej strony projektu. Z racji, ze ja i Kuba studiujemy, a stycznen dla stydentow jest jak wyrocznia, czasu mamy niewiele. Na www.rapide.pl beda widoczne wieksze zmiany w projekcie. Pozdrawiam, Adrian. |
|
|
![]()
Post
#37
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Hm z tego co wiem to tworzą go 2 osoby, dodatkowo kilka osób udziela wsparcia w postaci znajdowania bugów w kodzie. Poza tym ile frameworków stało się poważnymi w ciągu dwóch meisięcy ? oj, od razu odebrałeś to jako atak a ja poważne pytanie zadałem. Ma plany i aspiracje. Obecnie tworza go 2 osoby. Ja - Adrian Pawlik oraz Jakub Kozicki. Wszystkie osoby chetne do rozwoju frameworka sa bardzo mile widziane. W najblizszych planach jest przede wszystkim stworzenie dobrej dokumentacji, przykladow aplikacji, tutoriali oraz samej strony projektu. Z racji, ze ja i Kuba studiujemy, a stycznen dla stydentow jest jak wyrocznia, czasu mamy niewiele. Na www.rapide.pl beda widoczne wieksze zmiany w projekcie. Pozdrawiam, Adrian. framewroków ci u nas dostatek ale tak na prawdę większość NIE nadaję się do produkcyjnego wykorzystania. Przy tych wybijających się zaraz powstaje jakaś społeczność ale albo lider musi sie mocno poświęcić albo oddaje więcej władzy w ręce ludu (svn, zespół dev). Tak jest niestety choćby w przypadku CodeIgniter - framework lekki, ciekawy, niestety JEDNOOSOBOWY, autor głuchy na prośby SVNa, włączenia w to większej ilości osób etc. Stąd moje pytanie - bo przejrzałem pobieżnie Rapide i wygląda obiecująco ale w chwili obecnej po prostu wygląda na prywatny projekcik jakich wiele (ostatnio inna osoba na forum pokazała podobny własny framework). Sugeruje: - ustalenie jakiegoś kierunku rozwoju - choćby wstępna roadmape, nie musi miec konkretnych dat, byle uwzględniała w/w kierunki rozwoju, komponenty z jakimis miesiącami/kwartałem? - - forum (!) - dokumentacje ( ![]() Osobiście jestem za słaby w teorii aby wam pomóc (starość nie radość), nie mniej jestem dobry w testowaniu i pisaniu różnych przedziwnych aplikacji na tych frameworkach więc mogę pomóc o ile zostaną spełnione w/w punkty ![]() pozdrawiam, wytrwalosci zycze. Ten post edytował normanos 11.01.2007, 10:16:05 -------------------- |
|
|
![]()
Post
#38
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Co do Forum i Dokumentacji ja mogę się tym zająć
![]() ![]() ![]() -------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#39
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Od lutego na pewno wiele sie zmieni. Zakonczy sie sesja i ja i Kuba bedziemy mieli wiecej czasu. Rapide jest otwarty na nowe propozycje i kolejne osoby. Wcale nie trzeba byc wymiataczem z php, zeby udzielic sie w projekcie. Trzeba zrobic dobra strone projektu, tj. funkcjonalna, czytelna i profesjonalna oczywiscie. Jezeli ktos chcialby sie podjac, serdecznie zapraszam. W zamian oczywiscie nazwisko na liscie autorow/deweloperow. Pozdrawiam, Adrian. |
|
|
![]()
Post
#40
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Prph: Gdzie się zgłaszać:D?
-------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#41
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#42
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
to ja poczekam aż będzie już coś wiadomo
![]() -------------------- |
|
|
![]()
Post
#43
|
|
![]() Grupa: Zarejestrowani Postów: 251 Pomógł: 13 Dołączył: 15.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
witam
framework zapowiada się ciekawie ![]() ale mam dwa pytanka 1. skąd można pobrać aktualną i spakowaną do zip-a rar-a gz-ta wersje bo na stronie owszem da się przeglądać kod w przeglądarce ale nigdzie nie znalazłem linka do archiwum ![]() 2. i czy jest możliwość korzystania z nice-url w Rapide ![]() ![]() -------------------- Everything should be made as simple as possible, but not simpler. - A.Eainstein
|
|
|
![]()
Post
#44
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
W projekcie Rapide ruszyło oficjalne forum dostępne tutaj Zapraszam wszystkich. Ps. Jeżeli naruszyłem regulamin proszę o usunięcie posta i z góry przepraszam. |
|
|
![]()
Post
#45
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
super, tylko postawiliście by to na czymś porządnym: punBB albo (imho super) Simple Machines Forum. jak wroce w pon to tam do was zajrze.
-------------------- |
|
|
![]()
Post
#46
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Normanos: ja to im mówiłem, ale jak widać propozycja została odrzucona. Ja proponowałem myBB.
-------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#47
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
witam framework zapowiada się ciekawie ![]() ale mam dwa pytanka 1. skąd można pobrać aktualną i spakowaną do zip-a rar-a gz-ta wersje bo na stronie owszem da się przeglądać kod w przeglądarce ale nigdzie nie znalazłem linka do archiwum ![]() 2. i czy jest możliwość korzystania z nice-url w Rapide ![]() ![]() Ad1. Zaraz chyba cos napisze do tworzenia snapshota. Mozna sciagnac za pomoca SVN. Ad2. Jest mozliwosc. Banalnie proste: - Kazac uzywac Front kontrolerowi Rapide_Router_Rewrite - utowrzyc .htaccess kierujacy wszystk co trzeba na index.php Jeszcze dzis ruszy nowe forum. Pozdrawiam, Adrian. Pod adresem http://rapide.pl/snapshot/ dostępna najnowsza wersja Rapide. Snapshot tworzony jest każdego dnia. Adrian. |
|
|
![]()
Post
#48
|
|
![]() Grupa: Zarejestrowani Postów: 367 Pomógł: 2 Dołączył: 4.03.2003 Skąd: C:/Windows/Temp Ostrzeżenie: (0%) ![]() ![]() |
Czekam na forum i na jakieś przykłady/tutorial jako że jestem na etapie szukania frameworka i nauki korzystania z MVC.
-------------------- |
|
|
![]()
Post
#49
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Forum zostanie zmienione na inne w najbliższym czasie.
|
|
|
![]()
Post
#50
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Zasadniczo na co ?
-------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#51
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Zasadniczo to powstał mały problem : myBB nie ma jeszcze polskiego wsparcia dla najnowszej wersji, a punBB jest zbyt ograniczone - jakieś propozycje?
|
|
|
![]()
Post
#52
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
myBB, ja mogę przetłumaczyć ;] Tylko trza będzie siąść i robić
![]() -------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#53
|
|
![]() Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Nom, albo poczekać na polskie wsparcie... ;/
|
|
|
![]()
Post
#54
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Ono nigdy nie powstanie raczej, bo Polaki leniuchy ;] To tłumaczyć czy nie
![]() ![]() -------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#55
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Ono nigdy nie powstanie raczej, bo Polaki leniuchy ;] To tłumaczyć czy nie ![]() ![]() punBB - trzebaby kupe czasu, zeby zainstalowac wszystkie modyfikacje, ktore pozwola na normalna prace. SimplaMachines - beznadziejne :/ Tlumacz myBB. Dzis postawie angielska wersje. Lang wrzucimy, jak bedzie gotowy. BTW, phpBB dawno by juz stalo. Adrian. |
|
|
![]()
Post
#56
|
|
![]() Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Ta jest panie generale
![]() Na jutro postaram się zrobić podstawowe akcje ;] Do końca tygodnia przetłumaczyć powinienem wszystko. Przetłumaczona 1/3 . Mam dość ;] Jutro kończę ![]() Ten post edytował Turgon 14.01.2007, 22:02:07 -------------------- Jah Music Is On My Mind !
|
|
|
![]()
Post
#57
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Zasadniczo to powstał mały problem : myBB nie ma jeszcze polskiego wsparcia dla najnowszej wersji, a punBB jest zbyt ograniczone - jakieś propozycje? a ja niewyraźnie napisałem? ![]() Simple Machines - sam instalowałem ostatnio dla kilku osób z darmowgo projektu -> forum.serialopedia.pl i jestem w szoku jak mocno to forum się rozwinęło (punBB lezy w sprawach moderacyjnych; to czyli SFM ![]() -------------------- |
|
|
![]()
Post
#58
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
~Prph, ~envp, ~Turgon jeśli nie potraficie sobie zainstalować jakiegoś komunikatora to powiedzcie.
Czat sobie urządziliście czy jak? Zamykam. Otwieram na prośbę Prph |
|
|
![]()
Post
#59
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
..... kawał dobrej roboty
![]() |
|
|
![]()
Post
#60
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Wczoraj przemianowaliśmy wersję na 0.4. Od czasu pojawienia się Jakuba Kozickiego w projekcie poprawiono wiele elementów i zlikwidowano kilka błędów. Teraz głównym celem projektu jest stabilizacja Rapide. W kolejnych odsłonach mamy zamiar dodać kilka dosyć znaczących elementów, ale przede wszystkim chcemy usunąć wszelkie problemy, jakie może napotkać programista używając Rapide. Dodam, że można już korzystać z http://forum.rapide.pl - zapraszamy! Zachecam wszystkich do pobrania źródeł Rapide. Najnowszy snapshot pod adresem http://rapide.pl/snapshot/. Pozdrawiam, Adrian. Ten post edytował Prph 18.01.2007, 11:27:44 |
|
|
![]()
Post
#61
|
|
![]() Grupa: Zarejestrowani Postów: 367 Pomógł: 2 Dołączył: 4.03.2003 Skąd: C:/Windows/Temp Ostrzeżenie: (0%) ![]() ![]() |
A kiedy powstanie dokumentacja, narazie robicie layouty dla strony itd itp a najważniejszego nie ma
-------------------- |
|
|
![]()
Post
#62
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
A kiedy powstanie dokumentacja, narazie robicie layouty dla strony itd itp a najważniejszego nie ma Wspominalem juz o tym kilka postow wczesniej. Nad dokumentacja moga pracowac jedynie deweloperzy. Tak sie sklada, ze kazdy z nas studiuje, a wiadomo jak jest w styczniu. Dokumentacja bedzie utworzona w lutym. Co do layoutu - robi go Ano. Adrian. |
|
|
![]()
Post
#63
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
mam takie pytanie, moze troche ogolne
jaka przewage ma rozwiazanie zastosowane w Rapide z podzialem widoku na klase i szablon? w CI framework widok jest juz szablonem, mozna w nim wstawiac html, php, dane z kontrolera. a do czego sluzy klasa widok? tylko do ladowania szablonu? przeciez to wiecej plikow, wiecej pisania i wogole wszystkiego wiecej. -------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#64
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
mam takie pytanie, moze troche ogolne jaka przewage ma rozwiazanie zastosowane w Rapide z podzialem widoku na klase i szablon? w CI framework widok jest juz szablonem, mozna w nim wstawiac html, php, dane z kontrolera. a do czego sluzy klasa widok? tylko do ladowania szablonu? przeciez to wiecej plikow, wiecej pisania i wogole wszystkiego wiecej. Ale poprawnie implementuje MVC. Przyklad: Cennik produktow w sklepie. Wystarczy napisac jedna akcje i kilka widokow, aby cennik przedstawiac w postaci XML, CSV, PDF. Oczywiscie mozna zrobic jeden widok - nie ma problemu. Tworzymy widok o nazwie Html. i teraz w kontrolerze:
Poza tematem widoku. W Rapide zostal utworzony nowy obiekt - Request. Informacje o nim na forum Rapide: http://forum.rapide.pl/viewtopic.php?t=4 Pozdrawiam, Adrian. |
|
|
![]()
Post
#65
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
troche skomplikowane to
jezeli chcialbym zeby zamiast html wyswietlil mi pdf to nie mozna w kontrolerze odpalic odpowiedniego widoku?
ja wychodze z zalozenia ze framework jest po to zeby upraszczac pisanie aplikacji, a tutaj mozna sie pogubic w gaszczu plikow i katalogow. moze poczekam na jakas przykladowa aplikacji, dokumentacje - moze wtedy mi sie rozjasni o co tak naprawde chodzi:) -------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#66
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
troche skomplikowane to jezeli chcialbym zeby zamiast html wyswietlil mi pdf to nie mozna w kontrolerze odpalic odpowiedniego widoku?
No przecież o tym mówiłem ;-) Jeżeli chcesz, możesz tak używać widoków. Przyznam, że tworzenie kolejnych klas widoku, które i tak dziedziczą z Rapide_View_Html może być męczące, ale publiczna metoda setTemplate() rozwiązuje ten problem. Jak już wcześniej wspomniałem - Rapide mocno implementuje MVC, dlatego taka konwencja. Pracujemy nad intuicyjnością w Rapide, ale zgodzę się - bez dokumentacji będzie ciężko. Ogólnie staramy się tak projektować Rapide, żeby był łatwy, dawał duże możliwości i był poprawnie napisany. Żadne obejścia w kodzie nie wchodzą w grę. Pozdrawiam, Adrian. Ten post edytował Prph 24.01.2007, 00:01:14 |
|
|
![]()
Post
#67
|
|
![]() Grupa: Zarejestrowani Postów: 416 Pomógł: 0 Dołączył: 8.01.2004 Ostrzeżenie: (0%) ![]() ![]() |
Na swojej stronie reklamujesz Rapide jako pierwszy polski framework php. A zgodzisz sie chyba, ze pierwsi to akurat na pewno nie jestescie. Z tego co pamietam to nawet Cake ma polskie korzenie.
A poza tym, to powodzenia. Szkoda ze nie mam czasu sie przyjrzec Rapide. |
|
|
![]()
Post
#68
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Na swojej stronie reklamujesz Rapide jako pierwszy polski framework php. A zgodzisz sie chyba, ze pierwsi to akurat na pewno nie jestescie. Z tego co pamietam to nawet Cake ma polskie korzenie. A poza tym, to powodzenia. Szkoda ze nie mam czasu sie przyjrzec Rapide. Heheh, przyznam się, że czekałem na moment, kiedy ktoś to wypomni ![]() A co do polskich frameworków - Phiend mógł być takim. Niestety projekt upadł. Pozdrawiam, Adrian. |
|
|
![]()
Post
#69
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
społeczność się zacznie jak będzie dokumentacja prosta jak w CI
![]() ![]() Na swojej stronie reklamujesz Rapide jako pierwszy polski framework php. A zgodzisz sie chyba, ze pierwsi to akurat na pewno nie jestescie. Z tego co pamietam to nawet Cake ma polskie korzenie. to może mała modyfikacja: pierwszy polski framework w php5? ;D -------------------- |
|
|
![]()
Post
#70
|
|
![]() Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
-------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
![]()
Post
#71
|
|
![]() Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Przyjżałem sie rapidowi, i on jest porpostu babastyczny. Bardzo dobrz napisany i intuicyjnie. No może pogubiłem się troszkę jak ładuje się akcje, ale już wiem
![]() ![]() Gorąco polecam -------------------- |
|
|
![]()
Post
#72
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
To tez nas zaskoczylo :/ Chyba trzeba bedzie porozmawiac z progrmistami Mojavi. Rapide Framework oficjalnie pojawil sie 07.09 - pierwszy post na forum. Strony Mojavi wtedy nie bylo. Pozdrawiam, Adrian. |
|
|
![]()
Post
#73
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
Przyjżałem sie rapidowi, i on jest porpostu babastyczny. Bardzo dobrz napisany i intuicyjnie. No może pogubiłem się troszkę jak ładuje się akcje, ale już wiem ![]() ![]() Gorąco polecam moze napiszesz na forum.rapide.pl przyklad jakiejs aplikacji? zeby dolaczyc model widok kontroler. -------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#74
|
|
![]() Grupa: Zarejestrowani Postów: 1 873 Pomógł: 152 Dołączył: 9.04.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Przykro mi ale już to usunołe. Powie, tylko że nie jest to trudne. Teraz pisze własnego FW, pewnie nie tak dobrego ale zawsze swoje...
-------------------- |
|
|
![]()
Post
#75
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
moze napiszesz na forum.rapide.pl przyklad jakiejs aplikacji? zeby dolaczyc model widok kontroler. Aplikacji przykladowej jeszcze nie ma, ale kazdego dnia pisana jest dokumentacja: www.doc.rapide.pl. Pozdrawiam, Adrian. Ten post edytował Prph 28.01.2007, 15:01:22 |
|
|
![]() ![]()
Post
#76
|
|
![]() Grupa: Zarejestrowani Postów: 627 Pomógł: 33 Dołączył: 1.05.2005 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
moze napiszesz na forum.rapide.pl przyklad jakiejs aplikacji? zeby dolaczyc model widok kontroler. Daj nam trochę czasu: najpierw dokumentacja, potem jakaś lista to-do/roadmapa. Z pewnością będzie duży tutorial w stylu Symfony czyli "jak w xx dni napisać cośtam" (myślę, że będzie to katalog stron - ze względu na moje związki z SEO będę miał mały feedback działania tego). Być może wcześniej zrobię dużo prostszy przykład (ale to już można wyczytać z doc.rapide.pl) typu: 1 kontroler -> 1 model -> 1 widok = dla szybkiego wyjaśnienia tym, którzy jeszcze z MVC i frameworkami nie mieli do czynienia. -------------------- |
|
|
![]()
Post
#77
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
ja odnosilem sie do konktetnego posta, do posta uzytkownika pim2 ktory napisal
Cytat Przyjżałem sie rapidowi, i on jest porpostu babastyczny. Bardzo dobrz napisany i intuicyjnie. No może pogubiłem się troszkę jak ładuje się akcje, ale już wiem ![]() skoro takie cos napisal to niech sie podzieli, skoro juz doszedl do tego jak sie pisze aplikacje z tym frameworkiem to moglby sie przyczynic i napisac:) wielkie brawa za rozpoczecie prac nad dokumentacja:) dosyc dobrze sie czyta. Ten post edytował AxZx 28.01.2007, 20:39:34 -------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#78
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
wielkie brawa za rozpoczecie prac nad dokumentacja:) dosyc dobrze sie czyta. Mam jeszcze taka prosbe, zeby komentowac to, co znajduje sie w dokumentacji na forum projektu - http://forum.rapide.pl/viewtopic.php?t=10 Adrian. |
|
|
![]()
Post
#79
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
To tez nas zaskoczylo :/ Chyba trzeba bedzie porozmawiac z progrmistami Mojavi. Rapide Framework oficjalnie pojawil sie 07.09 - pierwszy post na forum. Strony Mojavi wtedy nie bylo. Gwarantuję Ci, że projekt Mojavi 4, strona oraz cała reszta istniała dużo wcześniej niż zdążyłeś pomyśleć o swoim frameworku ![]() |
|
|
![]()
Post
#80
|
|
![]() Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#81
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 16:11 |