2 view kell
Szia
2 külön view-ra lesz szükséged. Ha jól olvasom az egyik már meg is van, csak még nem azt csinálja amit szeretnél.
Egyik
Tartalmakat listáz egy bizonyos szerzőre szűrve
Kell egy oldal útvonallal, úgy hogy a a szerzőt az URL-ből szedje ki.
cikkek-szerzo-szerint/%
Ezt hívják argumentumnak.
Másik
Felhasználókat listáz. Ha jól olvasom akkor ezt már elkezdted.
De views-nak nem mindegy, hogy a "Content Profil"-os node-okat vagy pedig felhasználókat kell listáznia.
Minimum kell két mező:
[nid] vagy [uid] (legyen rejtett)
Felhasználó neve.
Lényeg hogy előbb legyen az azonosító, mert csak akkor lehet felhasználni mint token.
A név mező beállításainál kapcsold ki azt az alap lehetőséget hogy a név hivatkozzon a felhasználói profilra (vagy node-ra), és kapcsold be a "Mező megjelenítése mint link" (valami ilyesmi)
Újabb mezők bukkannak elő. URL legyen:
cikkek-szerzo-szerint/[uid]
Ez lényegében ugyan az mint amit aboros javasolt, csak a "rewrite output" helyett egyszerübb módszer is van hivatkozásra alakítani egy mezőt.
Ha jól emlékszem ilyenről még Vörös-Boros videó is van.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
hát akkor mixeljük meg durván :)
persze egyátalán nem vagyok benne biztos, hogy ez így működni fog.
pakoljunk bele még flag meg rules modult, hamár lúd legyen kövér. a gyümölcs tartalom típusban legyen egy flag, "felhasználta". ezt egy nem-globál flag és egyik csoport se használhatja. :) itt van a kétségem, hogy ettől még a következő lépés működni fog e.
legyen egy rule, ami tartalom mentésekor, ha a tartalom típusa kedvenc gyümölcs, akkor a szerző nevében ráteszi a hivatkozott gyümölcs nodera a "felhasználta" flaget. (nem tudom eldönteni hirtelen, hogy ez itt eltörik e amiatt, hogy a flag beállításaiban az van, egyik csoport sem használhatja, de az meg szükséges, hogy kézzel ne tudja birizgálni ezt a flaget. ha elrejtem csak, az nem elég, mert gyalog hívhatja a flag urlt és akkor kijátssza a szisztémát. ezt is meg lehetne kerülni de akkor már tényleg rémálom bonyolult lesz a kerülőút)
innen már gyerekjáték, a view ami a node reference mezőt eteti, azokat a gyümölcs tartalmakat mutatja, amiket az aktuális user nem jelölt még meg a "felhasználta" flaggel.
a flag leszedését meg szintén egy rule intézi, ha esetleg törölnénk a kedvenc gyümölcs típust, akkor újra felszabaduljon az a usernek.
vagy x terv, aka special tactics, írunk egy modult, vagyhát vki ír.. :D
-
clear: both;
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Algoritmusok bonyolultsága
Ezzel a hozzáállással az a probléma, hogy vannak olyan beállítások és megoldások amiket pénztárcával nem lehet bírni.
Nekem egyszer sikerült egy olyan megoldást összekattintanom ami bármilyen nagy szervert leültet. (bármilyet, mivel önmagát dosolta)
Szakértettem olyan oldalt, ahol 1 oldalletöltésből csináltak 30-at különböző AJAXos megoldásokkal.
De ezek csak tipikusan hibás megoldásai egy egyszerű feladatnak. Vannak azonban olyan feladatok amikhez nem lehet gyors megoldást gyártani. Képtelenség. Ilyenkor a feladatot részfeladatokra kell bontani, amik már megoldhatóak rövidebb idő alatt. És itt az időt ne úgy képzeld el, hogy 2 perc, hanem az adott feladatba tartozó elemek számával arányos képletre gondolj. És ez a képlet nem mindig úgy néz ki, hogy mondjuk 2*N (ahol N az elemszám, mondjuk a node-oké), tehát ha kétszer annyi node-od van akkor kétszer annyi teljesítmény kell. Simán lehet valamilyen exponenciális összefüggés, mondjuk kettő az N-ediken.
http://www.cs.elte.hu/~kiraly/alg.pdf
Amiért biztosan hibás a „veszek még vasat” megoldás, mert nem létezik univerzális megoldás. Nincsen. Csak probléma van és megoldás, így együtt. Egy megoldás ami egyik problémára gyógyír lehet a másik problémádat épp elmélyíti. (pl. a veszek még vasat biztos károsan hat a pénztárcádra)
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Több információt
A lényeget már írták előttem, a node-ot nem kell ellátni id-val, van neki.
Egy normális theme ki is írja ezt a template-ben.
Gondolom tudod, hogy JavaScript-kódot nem csak azonosítóhoz rendelhetsz. Nem tudom, egész pontosan mihez kell neked, ezt nem írtad le.
De ha valami általános jellegű scriptet szeretnél írni, akkor egyszerűbb és ésszerűbb lenne az osztály szerint azonosítani. Ez theme-től is függ, hogy alapból mit pakol a node-okat megjelenítő template-be - ami tudtommal mindegyik theme-nél megvan: "node".
A Zen theme egész hosszú listát pakol be az osztályokból, amik nagyon leegyszerűsítik az azonosítást, egy példa a /node elérési útról, az egyik node wrapper div-jének osztályai:
class="node node-type-story node-promoted node-by-viewer node-teaser build-mode-teaser clearfix"
Ezek alapján könnyű általános JavaScript-kódot is írni a node-okra.
Írj több infót, mire is kell neked az azonosítás, milyen JavaScript-kódot szeretnél írni, és akkor aszerint segítünk.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
picit konkrétabban? :)
Köszi a rövid beszámolót! Picit túl általános volt számomra, miben rugalmasabb ennyivel, mint az Ubercart? Csak röviden is elég, nem akarom telenyomni a topicot hsz.-ekkel, de tényleg érdekel a téma, viszont sajnos most jódarabig nem lesz időm kipróbálni a Commerce-t, ezért picivel több információmorzsának még nagyon örülnék, ha nem gáz. :)
Az biztos, hogy Ubercarthoz azért egyelőre jóval több modul készült, ami azért nagyon nem mindegy, ha valaki időt akar spórolni, és épp olyanra van szüksége, amit mondjuk a Commerce-hez még nem írtak meg; de sok helyen olvastam már, hogy a Commerce a jövő, de sajnos eddig tök általános infómorzsákat kaptam a miértekről, bár nem is mélyedtem bele a témába. Jól jönne ezért némi tapasztalat olyantól, aki élesben is használja, hogy mégis mitől jobb a Commerce, mint az Ubercart, legalább röviden. Mert általánosabb entitásokra épít, mint mondjuk az Ubercart, és ez kínál némi rugalmasságot? Mintha valahol olvastam volna, hogy azért az Ubercartot is modernizálták a 7-es változatnál (én csak 6-oshoz használtam Ubercartot, és 6-osban mai fejjel azért még nagyon sok minden iszonyat melós volt), de biztos valamilyen szempontból gyengébb, ha ezt írod, na de miben gyengébb?
Előre is köszi, ha még írsz róla pár mondatot!
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Igazad van, végül is
Igazad van, végül is elmentődik minden adatbázisba, nem csak a kódból kotorja ki a modullal definiált content type-okat sem. Kérdés, vajon ez tényleg hatékony-e így. (Mindent jól benyomni serializálva adatbázisba, aztán unserializálni, jó kis memóriazabáló módon...)
Én úgy gondolom, hogy a node_type_save() elment egy tartalomtípust, mint pl. amikor modulból létrehozunk egy tartalmat vagy bármit. A hook_node_info() pedig definiál egy olyant, ami a modul működéséhez feltétlenül szükséges.
Ja, hát én arra gondoltam - bár lehet, hogy nem sikerült jól kifejezni magam az eredeti hsz.-ben, aztán még beleírtam egy téveset is jól összecsapva -, hogy a node_type_save-vel mentett cuccok például az admin-felületen létrehozott content type-ok, tehát amiket én összeklattyogtatok a GUI-n, VAGY olyanok, amiket mondjuk modulból, "programmatically" hozok létre, a megfelelő paraméterekkel, míg a hook_node_info() meg arra szolgál, hogy egy modullal tudjak én is kínálni egy modul szerinti default tartalomtípust (ahogy írtad, amire feltétlen szükség van), ami aztán végül szintén bekerül az adatbázisba, ahogy írtad is.
Szóval ez még nem a Drupal 8, ezért itt még nincs olyan az alaprendszerben, hogy egy adat „csak úgy jön” valahonnan.
Ezt hogy érted? Mármint az említett dolgok miben lesznek mások D8-ban?
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Van egy viszonylag
Van egy viszonylag szerteágazó menürendszer, ahol a menüpontok page tartalmakhoz vannak rendelve.
A gond ott keletkezett, hogy a page-ek beküldésekor néha elfelejtettek menüpontot megadni, így miután elnavigáltak a lapról "eltűnt" az oldal. Aztán mivel nem találták, létrehoztak még egyet :)
Persze irányíthattam volna őket a admin/content/node oldalra , de egyszerűbbnek gondoltam, ha kapnak egy listát az eltévelyedett page-ekről. Csak hát ahogy látom nem olyan egyszerű a dolog....
Időközben, hogy a továbbiakban ez ne történhessen meg, a page beküldő oldalon kötelezővé tettem, hogy meg kelljen adni menüpontot (és mellesleg kiszűrtem, hogy "rossz" helyre se tudjanak menüpontot beszúrni), így ezek után már nem tudnak eltévelyedni a page-ek, de ez persze nem a kérdés megoldása, csak kezelése.
Az adott pillanatban egy lehetséges út volt még, saját modulban létrehozni a listát, de az SQL lekérdezés meghaladta a képességeimet, nevezetesen hogyan lehet azokat a node-okat kiszűrni, melyekhez nem tartozik menüpont ;) De ez nem drupal-os kérdés.
Összességében tehát a problémát a megelőzéssel oldottam meg (az egykéket meg kigyomláltam).
Persze továbbra is érdekel a probléma drupal-os megoldása, mert a kérdés felvetésekor azt gondoltam, hogy csak én nem találom meg ami kellene nekem...
...mit tudok: http://web.termuves.hu