![]() |
![]() ![]() |
![]() |
-pr4ktykant- |
![]()
Post
#1
|
Goście ![]() |
Mam formularz który dodaje rekordy do bazy. W nim prawie 80 pól z których każde jest inne więc trzeba je ponazywać, dopisać do widoku i umieścić jeszcze w widoku edycji. Sam plik ma ponad 1 000 linijek i gdy próbuję coś zmienić muszę edytować na raz 2 pliki (dodawanie i edycja). Myślę więc jak to powinno się najlepiej rozwiązać. Zrobić jeden widok dla dodawania i edycji i w nim warunki czy zostawić to tak jak jest ?
Gdybym miał drugi widok musiałbym * zrobić tablice z pustymi wartościami z wszystkich pól które będą zapisane (żeby nie wywaliło w widoku że zmienna nie istnieje) * zrobić warunki na akcje formularza (add/edit) oraz na submit formularza (dodaj/zapisz zmiany) tylko czy to jest dobry pomysł takie faszerowanie widoku pustymi zmiennymi oraz warunkami ? Niby bym miał łatwiej ale plik będzie bardziej zamotany chyba. Jak wy to robicie dla takich dużych formularzy ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Cytat Zrobić jeden widok dla dodawania i edycji i w nim warunki Dokładnie tak Ten post edytował Turson 26.02.2014, 11:37:43 |
|
|
-pr4ktykant- |
![]()
Post
#3
|
Goście ![]() |
a co robicie z pustymi zmiennymi ? isset czy generowanie ich masowo w controler'ach. Probuje znalezc najlepszy sposob a jak sie czegos naucze pozniej nawykow trudno jest sie pozbyc wiec najlepiej nabyc ich jak najlepszych (IMG:style_emoticons/default/wink.gif)
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Te 80 pól różni się od siebie bardzo? Mógłbyś podać jakieś przykłady?
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
W samym frameworku powinien istnieć sposób na to, że albo wartość jest pusta (dodawanie), albo pobiera ją z bazy jeżeli istnieje (istnieje). Wydaje mi się, że CI powinno mieć coś takiego.
|
|
|
-pr4ktykant- |
![]()
Post
#6
|
Goście ![]() |
@markuz baza wyglada mniej wiecej tak (sory ze w screenie):
(IMG:http://my.jetscreenshot.com/demo/20140226-zr74-62kb.jpg) @Turson o to chodzi ze ucze się Code Igniter i właśnie szukam na to rozwiązania bo nie wiem jak to zrobić :/ nie natknąłem się nigdzie na takie rozwiązanie, ale jak dam zmienną która nie istnieje to oczywiście jest błąd. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
CI to bardzo oporny framework, pracuję na nim już od 2 lat i czasami trzeba wymyśleć coś po swojemu żeby sobie zaoszczędzić pracy. Nie wiem czy kod jest prawidłowy bo pisałem z palca i nie sprawdzałem aczkolwiek myślę, że ogólny sens zrozumiałeś (IMG:style_emoticons/default/wink.gif) |
|
|
-pr4ktykant- |
![]()
Post
#8
|
Goście ![]() |
Dziękuję za kod, później go jeszcze dokładniej przeanalizuję z verification, sporo się z niego nauczę. Nie rozumiem jednak jednego. Po co to set_value skoro 2 parametr dla np. input i tak przyjmuje wartosc "value" wiec nwaet jak sie da bez set_value to bedzie to samo ...
Nie jestem pewien czy dobrze zrozumiałem ale w Twoim kodzie chyba i tak jest podzielone na 2 pliki widok add/edit a mam tam już ponad 1 000 linijek razem z foundation posegregowanych w tabulatory i zmienianie tego na tym etapie to prawie jak pisanie tego od nowa (IMG:style_emoticons/default/sad.gif) Zazwyczaj używam trochę inaczej form_helper'a bo muszę dać więcej opcji więc przykładowo wygląda u mnie to tak:
i myślę czy nie szybciej w tym momencie byłoby w widoku dać jakiś isset albo przynajmniej cos w stylu:
ale jak do tablicy dodać takie cos ? Mogę dla każdego z 80 elementów dać dodatkowa zmienna np.:
ale pisać to znów 80 razy ? |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Dziękuję za kod, później go jeszcze dokładniej przeanalizuję z verification, sporo się z niego nauczę. Nie rozumiem jednak jednego. Po co to set_value skoro 2 parametr dla np. input i tak przyjmuje wartosc "value" wiec nwaet jak sie da bez set_value to bedzie to samo ... Drugi parametr dla input to jego value. Jak go nie podasz to value = "". Jak dodasz do tego set_value('pole') to wtedy value = $_POST['pole']. Jak zrobisz set_value('pole', 'pole2') wtedy jeśli $_POST['pole'] jest puste to pobiera pole2 (w moim przypadku pobierze go z modelu). Cytat Zazwyczaj używam trochę inaczej form_helper'a bo muszę dać więcej opcji Równie dobrze możesz w tablicy fields dodać elementy takie jak placeholder czy id i wyświetlać je jeśli element != NULL Dodałem widoki edit i add bo takie rozwiązanie jest według mnie lepsze. Ogólnie chciałem Ci przedstawić koncepcję a jeśli chodzi o wykonanie to już twoja sprawa (IMG:style_emoticons/default/wink.gif) Nie chcesz poprawiać - nie musisz. To zależy jak dużo zmian będziesz musiał potem wprowadzać i co zajmie Ci więcej czasu. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 05:26 |