Hogyan érdemes választani egy feladat lehetséges megoldásai közül?

  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • GeSHi library error: sites/all/modules/geshifilter/geshi is not a directory.
  • The spam filter installed on this site is currently unavailable. Per site policy, we are unable to accept new submissions until that problem is resolved. Please try resubmitting the form in a couple of minutes.
Kategória: 
Leírás

Ez egy olyan téma, amiről már megint régen készültem írni, és most újra egy drupal.hu kérdés adta a végső lökést.

A feladat:

ne csak a meglévő lehetőségek közül lehessen választani a közzétételi beállításoknál (közzétesz, címlapra helyez, kiemelt), hanem legyen egy plusz checkbox is

Ez egy nagyon egyértelmű és jól behatárolt leírás. A kulcsszó, amit a szerző is nagyon jól megfogott, a közzétételi beállítás, magyarul node options.

Honnan vannak ezek az opciók?
Ezek egy node különböző állapotai, ami lehet igaz vagy hamis. Ezek az opciók a node táblában vannak eltárolva egy-egy mezőben. Tehát a feladat akkor van teljesítve, és nem túlteljesítve, ha ezt, és csak ezt meg tudjuk valósítani.

Szerencsére nagyszerű jószág ez a drupal, ezerféleképpen meg lehet csinálni egy dolgot, és ez a feladat nagyon jó példa arra, hogy megoldás és megoldás között is van lényegi különbség. Nem mindegy ugyanis, mennyi erőforrásba kerül amit választunk.

A fórumban a következő lehetőségek merültek fel:

  • CCK - ezt ketten is írtuk
  • Flag - nekem az egyik személyes kedvencem
  • Taxonómia
  • Célmodul - ezt időközben megtaláltam: Custom Publishing Options

Drupalban baromi könnyű "overkill" módon kivitelezni dolgokat, ez természetes is, hiszen a jól bevált, egyszerűen kivitelezhető eljárások adják magukat, viszont felesleges terhet rónak a rendszerünkre, ergo sok olyan funkcionalitás "keletkezik" magától, amire semmi szükség a feladathoz.

Az ilyen overkill megoldások halmozása vezet odáig, hogy lesz egy batár nagy rendszer, ahol 1s helyett 4-5s az oldalgenerálási idő, a szolgáltató ledobja a láncot, és visítva szalad el, ha drupal oldalt akarnak nála üzemeltetni.

Menjünk végig a megoldásokon, és nézzük, minél, mivel lövünk túl a célon:

CCK

Lesz egy csomó sosem használt, feleslegesen tárolt beállítás, egy plusz mező egy egészen más táblában, megjelenítési módonként egy-egy sosem használt megjelenítés beállítás, egyéb moduloktól függően több felesleges változó, D7-ben pl két új táblát is kapunk ajándékba.

- Mikor lesz jó nekünk a cck?

  • Akkor, hogyha ezt az értéket valamilyen módon ki akarjuk íratni a nodeban.
  • Akkor, ha ki akarjuk használni a mezők súlyozásának a lehetőségét.

Flag modul

Na ez elég összetett dolog, amiért a leginkább ellenjavallt, hogy erősen a node műveletekbe épül bele a saját lekérdezéseivel, tehát akkor is terheli a nodeot, ha az adott nodenak semmi köze egyébként flaghez. A sminkrétegbe is belemászik, a viewsba, szóval mindenbe, amit egyébként sosem használnánk belőle ehhez a feladathoz.

- Mikor kell flag modul?

  • Akkor, ha ezt a státuszt pl a node szerkesztése nélkül egy szexi ajaxos widgettel kell állítani.
  • Ha rules-al kombinálva folyamatvezérlést építünk.
  • Ha például az egyik role az egyik állapotot, a másik a másikat állíthatja, pl egy editor beállíthatja "flagged"-re, de csak egy administrator állíthatja "unflaggedre"

Taxonómia

Összességében a legdrágább megoldásnak tűnik. Ez az egy érték 2 táblából érkezik ráadásul db_rewrite_sql-el, ami azt jelenti, hogy más modulok is simán fűszerezhetik lekérdezést.

Keletkezik továbbá két _publikus_ listaoldal is, márpedig igen valószínűtlen, hogy a látogatónak mutatnunk kell külön oldalt nodeokkal a lehetséges értékekről.

Lesz még tovább egy plusz szótár a maga összes sosem használt feauturével, benne két termmel, aminek az értékét nem fogják változtatni, mindezekhez saját beállítóoldalak.
A node megjelenítésébe bekerül automatikusan az érték - lehet a saját hookjainkal kiszedni.

Ezeken kívül itt van d6 régi baja, hogy x mennyiségű szótár után megbolodnul a szótár súly rendszere, önálló életet él, függetlenül attól mi van beállítva.

- Mikor kell a taxonómia?

  • Ha kell saját automatikus listaoldal a fontos nem fontos tartalmaknak.
  • Ha a lehetséges értékeket bővíteni, rendezni, módosítani kell.

Célmodul

A célmodulunk ezekhez képest éppen annyit tud, amennyire szükség van. Hozzáad egy mezőt a node táblához, biztosít egy jogosultságot, hogy melyik role szerkesztheti, és egy views integrációt, illetve beteszi magát a node formba.
Ha jól átgondoltuk, hogy tényleg nem kell több "feature", és egészen pontosan ez az, amit meg akarunk valósítani, akkor ez lesz a jó választás.


Ez a poszt igencsak ráült erre feladatra, pedig eredetileg sokkal általánosabban akartam írni az "overkill" jelenségről. Viszont maga a feladat annyira egzakt, hogy csak jóval elvontabb és általánosabb példát tudtam volna írni.

Hozzászólások

Thank you for the good

Thank you for the good writeup. It in fact was a amusement account it.
Look advanced to more added agreeable from you! By the way, how could we communicate?

Terrific Web-site, Stick to

Terrific Web-site, Stick to the great job. Thank you so much.|

Outstanding story there. What

Outstanding story there. What happened after? Thanks!

Just simply want to tell you

Just simply want to tell you I'm just lucky I stumbled on your page.|

It's a pity you don't have a

It's a pity you don't have a donate button! I'd without a doubt donate to this superb blog!
I guess for now i'll settle for bookmarking and adding your RSS feed to my Google account.
I look forward to brand new updates and will talk about this blog with my Facebook group.
Talk soon!

Now it is time to choose your

Now it is time to choose your particular investments.

That is true for funding

That is true for funding advice as nicely.

Pretty educational, look

Pretty educational, look frontward to visiting again.

It's an remarkable article

It's an remarkable article for all the online users; they will
get advantage from it I am sure.

With thanks! It a very good

With thanks! It a very good webpage!

I am really impressed

I am really impressed together with your writing abilities and also with the layout for your weblog.
Is that this a paid subject matter or did you modify it your self?
Anyway stay up the excellent quality writing, it is uncommon to peer
a great blog like this one these days..

Particularly

Particularly enlightening....look ahead to coming back.

I will right away seize your

I will right away seize your rss feed as I can't in finding your email subscription link or newsletter service.

Do you have any? Kindly let me understand so that I may just subscribe.
Thanks.

A monetary advisor is your

A monetary advisor is your planning partner.

Passion the site-- extremely

Passion the site-- extremely individual pleasant and great deals to see!

Howdy! This is kind of off

Howdy! This is kind of off topic but I need some help from an established blog.

Is it hard to set up your own blog? I'm not very techincal but I can figure things
out pretty quick. I'm thinking about making my own but I'm not sure where to begin. Do you have any
points or suggestions? With thanks

I delight in the content on

I delight in the content on your websites. Appreciate it!

Hi there colleagues, nice

Hi there colleagues, nice article and pleasant arguments commented here, I
am in fact enjoying by these.

I adore this website - its so

I adore this website - its so usefull and helpfull.

I am regular visitor, how are

I am regular visitor, how are you everybody?
This piece of writing posted at this site is truly pleasant.

Wow because this is excellent

Wow because this is excellent work! Congrats and keep it up.

Thanks to your curiosity in

Thanks to your curiosity in Funding Advice.

And this is an funding threat

And this is an funding threat worth taking.

Thanks for sharing your

Thanks for sharing your thoughts on hey. Regards

Thanks very useful. Will

Thanks very useful. Will certainly share website with my buddies.

When someone writes an

When someone writes an paragraph he/she keeps the idea of a user
in his/her brain that how a user can be aware of it.
Thus that's why this article is outstdanding.
Thanks!

You're an extremely valuable

You're an extremely valuable website; could not make it without ya!

This web site definitely has

This web site definitely has all the info I wanted about
this subject and didn't know who to ask.

I love this site - its so

I love this site - its so usefull and helpfull.

I'm impressed, I must say.

I'm impressed, I must say. Seldom do I come across a blog that's equally educative and engaging, and without a doubt, you've hit the nail on the head.

The problem is something not enough men and women are speaking intelligently about.
I'm very happy that I came across this during my hunt for something relating to this.

Thanks to your interest in

Thanks to your interest in Investment Advice.

Consider investments that

Consider investments that supply quick annuities.

Wow, stunning site. Thnx ...

Wow, stunning site. Thnx ...

Contemplate investments that

Contemplate investments that supply instant annuities.

Hello! I know this is kinda

Hello! I know this is kinda off topic but I'd figured I'd ask.

Would you be interested in exchanging links or maybe guest authoring a blog post or vice-versa?
My blog discusses a lot of the same topics as yours and I feel we could greatly benefit from each
other. If you're interested feel free to send me an e-mail.

I look forward to hearing from you! Wonderful blog by the
way!

say thanks to a lot for your

say thanks to a lot for your web site it helps a whole lot.

What's up it's me, I am also

What's up it's me, I am also visiting this website regularly,
this web page is truly fastidious and the viewers are truly
sharing nice thoughts.

Contemplate investments that

Contemplate investments that offer fast annuities.

Superb site you've there.

Superb site you've there.

Financial advisors business

Financial advisors business is folks enterprise.

And that is an funding risk

And that is an funding risk value taking.

What's up, this weekend is

What's up, this weekend is nice in favor of me, as this
point in time i am reading this great informative post here at my home.

Wow cuz this is extremely

Wow cuz this is extremely good job! Congrats and keep it up.

For newest information you

For newest information you have to pay a visit world wide web and on internet I found this site as
a most excellent website for latest updates.

And that is an funding risk

And that is an funding risk price taking.

I appreciate the data on your

I appreciate the data on your website. Thanks!

Hi there! I just wanted to

Hi there! I just wanted to ask if you ever have any problems with hackers?
My last blog (wordpress) was hacked and I ended up losing
many months of hard work due to no backup. Do you have any solutions to stop hackers?

Merely had to state Now i'm

Merely had to state Now i'm ecstatic that i came onto your site.|

Hello there! Do you know if

Hello there! Do you know if they make any plugins to safeguard against
hackers? I'm kinda paranoid about losing everything I've worked hard on. Any tips?

Sustain the incredible work

Sustain the incredible work !! Lovin' it!

Hozzászólás

A mező tartalma nem nyilvános.
  • Internal paths in double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or relative path.
  • Engedélyezett HTML elemek: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <del> <img>
  • A webcímek és email címek automatikusan linkekké alakulnak.
  • A sorokat és bekezdéseket a rendszer automatikusan felismeri.
  • Engedélyezett HTML elemek: <a> <blockquote> <br> <cite> <code> <dd> <del> <div> <dl> <dt> <em> <li> <ol> <p> <span> <strong> <ul>
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <bash>, <c>, <cpp>, <drupal5>, <drupal6>, <java>, <javascript>, <mysql>, <php>, <python>, <ruby>, <sql>. The supported tag styles are: <foo>, [foo].
  • Minden email cím át lesz alakítva ember által olvasható módon, vagy (ha a JavaScript engedélyezett) ki lesz cserélve kattintható, de biztonságos hivatkozásra.