![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 93 Pomógł: 7 Dołączył: 22.10.2009 Skąd: Siędzę Ostrzeżenie: (0%) ![]() ![]() |
Witam...
mam w bazie tabele: 1. Makes -> id, name 2. Modeles -> id, make_id, name 3. Cars -> id, make_id, modele_id, motor... Mam kontroller CarsController i w nim funkcje
w widoku ładnie mi tworze pola wyboru marki i modelu auta, ale chciałbym żeby opcja wybory modelu auta była dostępna dopiero po wybraniu marki auta tak jak na otomoto.pl Proszę o naprowadzenie jak utworzyć odwołanie z widoku do kontrolera aby ten pobrał właściwe dane i zwrócił do widoku... |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 640 Pomógł: 28 Dołączył: 13.02.2003 Skąd: Międzyrzecz/Poznań Ostrzeżenie: (0%) ![]() ![]() |
To zadanie dla AJAX'a lub samego JS
-------------------- PHP Developer
"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 93 Pomógł: 7 Dołączył: 22.10.2009 Skąd: Siędzę Ostrzeżenie: (0%) ![]() ![]() |
zdaję sobie z tego sprawę. Moje pytanie brzmi jak zrobić odwołanie z widoku do controllera aby odpowiednie dane pobrać?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 25 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Masz 2 rozwiązania jak napisał kicaj:
1. Używając JS: Pobierasz w kontrolerze:
I i widoku masz coś takiego:
I teraz za pomocą JA po zmianie na pierwszym selekcie wywołujesz akcje która: - ukrywa selekty - pokazuje selekt z id który pasuje do zaznaczonej opcji 2. Używając ajaxa musisz: - stworzyć metodę która zwraca listę opcji przy danym id - po zmianie na selekcie musisz wywołać ajaxa który pobierze listę opcji - usunąć wszystkie opcje z drugiego selekta - dodać te które zwróci ajax. Oczywiście musisz zmienić nazwy kolumn na takie jak masz w bazie. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 93 Pomógł: 7 Dołączył: 22.10.2009 Skąd: Siędzę Ostrzeżenie: (0%) ![]() ![]() |
wstawiam rozwiązanie może komuś się przyda. Bardzo dzięki za naprowadzenie jak rozwiązać 'zagadkę' ;D btw. Manual Cake jest naprawdę bardzo dobrze opisany.
W default.ctp dodajmy WIDOK ADD.CTP WIDOK UPDATE_SELECT.CTP
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:13 |