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

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

Think about investments that

Think about investments that provide fast annuities.

This is a topic which is

This is a topic which is close to my heart... Thank
you! Exactly where are your contact details though?

check top casinos online

check top casinos online games, play blackjack]

I like reading a post that

I like reading a post that can make people think.
Also, thank you for allowing me to comment!

Thanks on your interest in

Thanks on your interest in Investment Advice.

We are a gaggle of volunteers

We are a gaggle of volunteers and opening a new scheme in our community.

Your web site provided us with valuable info to work on. You've done
an impressive process and our whole neighborhood
will probably be grateful to you.

Howdy! I realize this is sort

Howdy! I realize this is sort of off-topic however I
needed to ask. Does building a well-established
blog like yours require a massive amount work? I'm completely new to writing
a blog however I do write in my journal everyday. I'd like
to start a blog so I can easily share my personal experience and views online.
Please let me know if you have any suggestions or tips for brand new
aspiring blog owners. Appreciate it!

An intriguing discussion is

An intriguing discussion is worth comment. I believe that you need to publish more on this issue, it might not be a taboo subject but usually folks don't discuss these subjects.

To the next! Many thanks!!

And that is an investment

And that is an investment risk worth taking.

I read this post fully about

I read this post fully about the resemblance of hottest and
previous technologies, it's awesome article.

Excellent, what a blog it is!

Excellent, what a blog it is! This web site gives valuable facts to us,
keep it up.

I loved as much as you will

I loved as much as you will receive carried
out right here. The sketch is tasteful, your authored material stylish.
nonetheless, you command get got an impatience over that you wish be delivering the following.
unwell unquestionably come more formerly again since exactly the
same nearly a lot often inside case you shield this hike.

I’m not that much of a online

I’m not that much of a online reader to
be honest but your sites really nice, keep it up! I'll go ahead and bookmark your
website to come back down the road. Cheers

And this is an funding threat

And this is an funding threat value taking.

Hi there to all, how is

Hi there to all, how is everything, I think every one is getting more from this site, and your views are fastidious in support
of new users.

I for all time emailed this

I for all time emailed this blog post page to all my contacts, since if like to read it then my friends will too.

Excellent post. I was

Excellent post. I was checking continuously this blog and I'm impressed!

Extremely helpful info specifically the last part :
) I care for such info a lot. I was looking for this certain info
for a very long time. Thank you and best of luck.

And this is an funding threat

And this is an funding threat price taking.

Great article, exactly what I

Great article, exactly what I needed.

It's awesome designed for me

It's awesome designed for me to have a website, which
is good designed for my knowledge. thanks admin

Yes! Finally something about

Yes! Finally something about ig.

A monetary advisor is your

A monetary advisor is your planning partner.

I loved as much as you will

I loved as much as you will receive carried out right here.
The sketch is attractive, your authored material stylish.
nonetheless, you command get bought an shakiness over that you wish be delivering
the following. unwell unquestionably come more formerly
again as exactly the same nearly very often inside case you shield this increase.

Marvelous, what a weblog it

Marvelous, what a weblog it is! This web site
presents helpful information to us, keep it up.

That is true for investment

That is true for investment advice as nicely.

Thank you a lot for sharing

Thank you a lot for sharing this with all folks
you really recognise what you are speaking approximately!
Bookmarked. Please additionally seek advice from my website =).
We could have a hyperlink alternate agreement among us

I have been browsing on-line

I have been browsing on-line greater than 3 hours as of late,
but I by no means found any attention-grabbing article like
yours. It's lovely value sufficient for me. In my view, if all website owners and bloggers made
excellent content material as you probably did, the internet
will likely be much more useful than ever before.

of course like your website

of course like your website however you need to take a look at the spelling on quite a few of your posts.
A number of them are rife with spelling issues and I find it very bothersome
to tell the truth on the other hand I'll definitely come back again.

My spouse and I stumbled over

My spouse and I stumbled over here different web page and thought I should check
things out. I like what I see so now i am following
you. Look forward to finding out about your web page for a second time.

I was recommended this blog

I was recommended this blog via my cousin. I'm not
certain whether this put up is written by him as
no one else recognize such particular about my problem.
You are amazing! Thanks!

I am regular visitor, how are

I am regular visitor, how are you everybody? This article posted at
this web site is genuinely fastidious.

Heya just wanted to give you

Heya just wanted to give you a quick heads up and let
you know a few of the images aren't loading properly.
I'm not sure why but I think its a linking issue. I've tried it in two different internet browsers and both show the same
results.

I do not even know how I

I do not even know how I ended up here, but I thought this post
was good. I don't know who you are but definitely you're going to a
famous blogger if you aren't already ;) Cheers!

Having read this I thought it

Having read this I thought it was rather informative.
I appreciate you finding the time and effort to put this information together.

I once again find myself personally spending way too much time
both reading and commenting. But so what, it was still worthwhile!

I visited various web pages

I visited various web pages except the audio quality for audio songs
existing at this website is genuinely fabulous.

Hello! I could have sworn

Hello! I could have sworn I've visited your
blog before but after looking at some of the articles I
realized it's new to me. Regardless, I'm definitely happy
I found it and I'll be book-marking it and checking back regularly!

Nice post. I learn something

Nice post. I learn something new and challenging on websites I stumbleupon everyday.
It will always be interesting to read through
content from other authors and use something from their websites.

Thanks for sharing your

Thanks for sharing your thoughts about ig.
Regards

I am not positive the place

I am not positive the place you are getting your information, but great
topic. I needs to spend a while studying much more or understanding more.

Thanks for magnificent information I used to be on the lookout for this info for my mission.

check this top casinos online

check this top casinos online

All forms of investments come

All forms of investments come with certain risks.

For most up-to-date

For most up-to-date information you have to go to see internet and on internet I found
this site as a finest web page for latest updates.

For newest information you

For newest information you have to pay a visit
the web and on web I found this website as a finest site for hottest updates.

whoah this weblog is great i

whoah this weblog is great i like reading your articles.
Stay up the great work! You understand, many
individuals are hunting around for this information,
you could help them greatly.

And that is an investment

And that is an investment threat worth taking.

Ahaa, its good dialogue about

Ahaa, its good dialogue about this piece of writing here at this web site,
I have read all that, so now me also commenting at this place.

Thanks for the marvelous

Thanks for the marvelous posting! I definitely enjoyed reading it, you can be
a great author.I will be sure to bookmark your
blog and definitely will come back someday. I want to encourage you
to continue your great work, have a nice weekend!

Fine way of telling, and

Fine way of telling, and pleasant post to take information about my presentation focus,
which i am going to deliver in institution of higher
education.

Financial advisors business

Financial advisors business is folks business.

I get pleasure from, lead to

I get pleasure from, lead to I discovered just what I used
to be looking for. You have ended my four day long
hunt! God Bless you man. Have a nice day. Bye

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.