Lehetséges-e olyan field API-n alapuló modul írása, amiben 4 dependens multiple select-et tartalmazó form van?
Form alterrel megcsináltam, azonban jó lenne (talán egyszerűbb is az életem), ha mindezt Field API-val is meg lehetne valósítani.
Előre is köszönöm.
Drupal verzió:
Fórum:
igen.
igen.
Palócz István
https://palocz.hu | https://tanarurkerem.hu
nnna most akkor minden ok!
Tanulságos válasz volt.
Pedig pont a kerdesedre valaszolt.
Pedig pont a kerdesedre valaszolt. :) A kerdes az volt hogy lehetseges-e, a valasz pedig hogy igen lehetseges.
Lassan szemantikai kurzuson érzem magam.
Persze lehet itt nagyképüsködni, mondatértelmezési vitákat nyitni, meg kioktatólag szivatni a kérdezőt arról, hogy kell kérdést feltenni, holott mindnyájan tudjuk, hogy aki itt kérdez, az azért teszi hogy tanuljon a nála képzettebbek jóindulatú(!), és nem utolsó sorban segítőkész(!) válaszából.
Úgy vélem joggal gondolom, hogy senki nem megvilágosodás útján szerezte a Drupal-tudását, hanem tanulta valakitől.(Ha mégis van itt messiás, az most jelezheti, éppen időszerű is.)
Vélhetően a fórumozó drupal-guruk sem lennének azok, ha hasonló hozzáállású tanároktól kellett volna tanulniuk, mint ahogy itt tapasztalhatom.(tisztelet a kivételnek!)
Ez már nem az első eset ezen a fórumon, hogy segítség helyett megpróbál megalázni a válaszoló.
Tudod mit?
Ha ez jól esik pp-nek, vagy bárki más is ettől elégül ki, ám tegye, lelke rajta!
Lehet hogy szakmailag nagyon ott vannak ezek a 'kollegák', de mint ember, bizony nagyon szánalmas az amit produkálnak.
Amilyen a kérdés, olyan a
Amilyen a kérdés, olyan a válasz. Pl hasonlítsd össze a tiédet ezzel: http://drupal.hu/forum/rss-k%C3%A9p/15764
Én speciel a kérdést sem értem, de ez legyen az én hibám.
Ha konkrétan leírnád, hogy mit akarsz, akkor konkrét választ kapnál. Így a legnagyobb jóindulattal is csak ennyire fussa: https://www.google.hu/search?sourceid=chrome&client=ubuntu&channel=cs&ie...
Szóval ha legalább annyi energiát fordítottál volna a kérdés megfogalmazására, mint az előző fröcskölődésre, akkor már beljebb lennél. Ha meg nem ez az első eset, akkor érdemes lenne elgondolkodni, hogy te mindent jól csináltál-e?
Amúgy seráfütty, volt már itt pár olyan ember, aki bevágta a durcit, csak mert rápirítottak cseppet. A legtöbbjét azóta sem láttuk, és egyiküket sem azért, mert az aquiához mentek vezető drupal fejlesztőnek..
Edit: Hopp, most láttam csak a korábbi témát. Én kérek elnézést, de már ki nem törlöm..
----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.
bővebben
http://api.drupal.org/api/drupal/modules!field!field.module/group/field/7
A kérdésedre specifikusabban:
http://api.drupal.org/api/drupal/modules!field!field.api.php/group/field...
Kérdés, hogy mit próbáltál, hol akadtál el? (persze azt is jó lenne tudni, hogy pontosabban mit akarsz, mert lehet rossz felé indultál el.)
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
PP! Köszönöm a válaszodat. Nagyjából ott a
bajom (ami nyilván alapeset, és elnézést az esetleges pontatlan megfogalmazásért,) hogy a legegyszerűbb példánál maradjak: A hook_field_widget_form-ba dropdown selectet beillesztve, és selectenként egy értéket kijelölve a hook_installban megadott táblában rendben insertalódnak az adatok.
Azonban ha a selectben a többszörös('#multiple' => TRUE,) kijelölés van beállítva, (és meg is történik a többszörös kijelölés) azt már váratlan hibával honorálja a drupal.
Leginkább a fent vázolt problémára szeretnék tanácsot kérni.Hogy kell megvalósítani a többszörös érték insertjét fieldben select list-nél, illetve egyáltalán mi az elve a custom field adatbázis kezelésének.
(Be kell ismerjem, már azt sem értem, hogy Field Api-val hogy lehet letárolni egy multiple select értékeit.)
Próbáltam a D7 option modulját értelmezni-sikertelenül.
Mi tagadás több napi gugli, Field Api bámulás-értelmezés(értetlenkedés) után sem értem az elvet. Nyilván az összes többi nyűgöm ennek a következménye.
Előre is köszönöm.
A kérdésed még mindig messze
A kérdésed még mindig messze van a konkréttól. :)
Ha egy fieldről beszélünk három dologról beszélünk:
1. Adatbázis reprezentáció
Ez egy vagy több mező a field adatait tároló táblában. Ebben a táblában ezek mellett a filedek mellett még számos információ tárolódik, amivel nem kell foglalkoznod, lévén a FieldAPI-t használod.
2. Beviteli elem (Widget)
Ez a beviteli űrlapon megjelenő formelem(jelen esetben egy olyan select ami multiple). Ezt egy jóízű form alterrel tolja bele a FieldAPI.
3. Megjelenítés (Formatter)
Hogyan jelenjen meg amikor a felhasználó nézi az adott elemet.
Miért nehéz a kérdésed?
Alapesetben, azt az esetet, amikor az elemből több van a Field API úgy kezeli, hogy egy táblázatba beletossz annyi, widgettet, amennyi szükséges. (ha végtelen, akkor ajaxxal bővíthető vezérlőt rak oda).
Természetesen ez felülírható. Pl. ha 1 elem van akkor egy sima select, ha több akkor egy multiple select form elem kerül bele az űrlapba. Lásd a core options widgetet.
Nem tudom, hogy Te mit szeretnél, mert ugye azt is akarhatod, hogy mindig multiple select legyen, és ha a field multiple, akkor a FieldAPI jelenítsen meg neked több multiple select form elemet. Ekkor nem kell csinálnod semmit se.
Ekkor még csak arról beszéltünk, hogy a field multiple. Ha a widget multiple akkor meg kell oldanod azt, hogy hogyan tárolja azt az adatbázisban, tehát egy widget -> db field átalakítást kell végezened a megfelelő hook segítségével.
Érdemes megnézned a examples modul, field_example modulját, ami egy több részből álló widget értékét tolja bele egy adatbázis mezőbe.
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Lassan megértem :))
Én is az field_example modulját értelmez(ge)tem.
Az én gondom valójában az általad írt utolsó bekezdés:
"Ekkor még csak arról beszéltünk, hogy a field multiple. Ha a widget multiple akkor meg kell oldanod azt, hogy hogyan tárolja azt az adatbázisban, tehát egy widget -> db field átalakítást kell végezened a megfelelő hook segítségével."
Végül is (mivel a fejemben a field multiple, és a select multiple sokáig kavargott valami homályos ködbe) ezzel szenvedek,azaz, hogy tudom letárolni az adatbázis megfelelő tábláiba a selectek többszörös értékeit.
Mondjuk az is kérdéses, ha a widgeten belül több multiple select is van, akkor ezt inkább érdemes lenne külön-külön táblákba tárolni.
Itt pedig elérkeztem a kezdeti tervemhez, miszerint egy adott tartalomtipus mezői függő-dependens kapcsolatban állnak egymással. (Hasonlót csinál a Conditional fields modul is, azonban az azért nem jó mégsem, mivel már létező táblákat használ, nekem meg ajaxos callback kellene.)Nos a dependens mező-mező kapcsolathoz aztán lövésem sem volt, hogy kezdjek hozzá.Ekkor csináltam meg egy modulba mindezt a hook_alter_form használatával, ami jól működik, de a views nem látja. Ezért szeretném a hook_field-et, hogy a továbbiakban a kimenet kompatibilis legyen a views-el.
Mindezeken túl már az is fellélegzés, hogy számomra is érthetően megfoglmaztad azt, amit én bizony nem tudtam. Ha nem terhes, légyszives a db field átalakítás értelmezésében segíts nekem.
Amúgy nagyon köszönöm a segítséget.
PS.: Bevallom, nekem nagyon nehéz átállni a drupalra.Valóban olyan mint a legó - ha jól emlékszem a Te egyik előadásodon hallottam - , és néha teljesen kiborít a "rücskös teteje".
A Drupal teljesen más gondolkodást igényel mint egy programnyelv. Ráadásul a szakirodalomban rengeteg dolog benne sincs, vagy legalábbis én nem találom.
Köszönöm mégegyszer.