RSS Feed

LMS i parser.so #2

Marzec 25, 2011 by 0verlord

A jednak da się w, nazwijmy to, LMS WAY (TM). Parser.so, jak donosi dokumentacja, ma kilka stałych, dla których nie potrzeba generować zapytania. Są to odpowiednio tablice CUSTOMERS, NODES i NETWORKS ze zdefiniowaną listą pól.
Czyli zamiast
{ result = zapytanie }
Można od razu przejść do właściwego efektu zapytania, np. zapytanie z poprzedniej notki może wyglądać tak:
{for (r=0; r<number(NODES); r++)}\
# {NODES[r].owner}:{NODES[r].ownerid}
{NODES[r].mac}-{NODES[r].ip}
{/for}\

Tylko w wersji 1.11.11 nie wiedzieć czemu, predefiniowane zapytanie jest generowane błędnie, trzeba czekać na deweloperów, albo poprawić sobie samemu w pliku:
modules/parser/extensions/sql.h

i przekompilować demona. W 1.11.12 to też nie działa, ale na forum już jest zgłoszony bug, może w cvsie nafixują.

Jeżeli ktokolwiek ma wątpliwości, dlaczego lepiej stosować rozwiązania natywne a nie swoje własne zapytania, odpowiedź nasuwa się sama – w przypadku fuckupa przy upgrade do kolejnej wersji, będzie można na forum obsobaczyć developerów 😉 A tak, przy próbie zgłoszenia buga ojebią nas, bo komu by się chciało ogarniać cudze selecty.

A tak bardziej serio, przy usunięciu wszystkich nienatywnych rozwiązań z LMSa, przed aktualizacją trzeba tylko czytać changeloga, a nie czekać na kogoś, kto nam poprawi zamotkę w zapytaniach. Przejęcie po kimś rozwiązania natywnego jest dużo prostsze w ogarnięciu, bo chociażby można poczytać dokumentację żeby skumać jak to działa, a nie się habilitować z zawartości cudzych zakrętów w mózgu.

Po to ludzie piszą narzędzia, żeby inni mogli a nich korzystać, a nie – psia mać – koło od nowa wymyślać. Dość jęczenia [:


Brak komentarzy »

No comments yet.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

pięćdziesiąt pięć + = pięćdziesiąt sześć