Zapytanie do bazy

w logach dostałem tylko to

Processing WolneGodzController#wolne_godz (for 127.0.0.1 at 2010-06-01 12:16:14) [GET] Session ID: 1aae00822217d36d7520065c909dcad1 Parameters: {"format"=>"0", "action"=>"wolne_godz", "id"=>"1", "controller"=>"wolne_godz"} e[4;36;1mSQL (0.048000)e[0m e[0;1mSELECT * FROM TABLE (WOLNE_GODZ_S(1,1, TO_DATE('26-05-2010', 'DD-MM-YYYY')))e[0m Rendering wolne_godz/wolne_godz Completed in 0.05300 (18 reqs/sec) | Rendering: 0.00500 (9%) | DB: 0.04800 (90%) | 200 OK [http://localhost/wolne_godz/wolne_godz/1.0]

<%= debug @result %>

tutaj dostaje tylko---

no to masz odpowiedź - dostajesz po prostu pustą tablicę, więc albo coś nie tak w zapytaniu, albo żaden rekord nie spełnia kryteriów

mała pomyłka coś przeoczyłem i był błąd, ale teraz dobrze zwróciło coś takiego:

#<OCI8::Cursor:0x85464f8 @stmttype=1, @stmt=#<OCIStmt:0x8546494>, @ctx=[32, #<Mutex:0x853dfd8>, nil, 65535], @env=#<OCIEnv:0x7949a4c>, @defns=[nil, #<OCIDefine:0x8546318>, #<OCIDefine:0x85462c8>, #<OCIDefine:0x85462b4>], @svc=#<OCISvcCtx:0x853dfc4>, @binds=nil, @parms=[#<OCIParam:0x854637c>, #<OCIParam:0x8546368>, #<OCIParam:0x8546354>]>

[quote=michal_sz]mała pomyłka coś przeoczyłem i był błąd, ale teraz dobrze zwróciło coś takiego:

#<OCI8::Cursor:0x85464f8 @stmttype=1, @stmt=#<OCIStmt:0x8546494>, @ctx=[32, #<Mutex:0x853dfd8>, nil, 65535], @env=#<OCIEnv:0x7949a4c>, @defns=[nil, #<OCIDefine:0x8546318>, #<OCIDefine:0x85462c8>, #<OCIDefine:0x85462b4>], @svc=#<OCISvcCtx:0x853dfc4>, @binds=nil, @parms=[#<OCIParam:0x854637c>, #<OCIParam:0x8546368>, #<OCIParam:0x8546354>]>

[/quote]
Zajrzyj proszę tutaj, powinno pomóc.

Zastosowałem to:

conn = OCI8.new('baza', 'baza') cursor = conn.exec('SELECT * FROM TABLE (WOLNE_GODZ(1,1, TO_DATE('26-05-2010', 'DD-MM-YYYY')))') while r = cursor.fetch() puts r.join(',')%> A <% end cursor.close conn.logoff
tyle że nadal nie wyświetla mi rekordów z bazy.
Dałem sobie tam literke ‘A’ i ją wyświetla tyle razy ile wierszy powinno mi zwrócić więc warunek działa…tyle że nie widać zawartości tabeli.

[quote=michal_sz]Zastosowałem to:

conn = OCI8.new('baza', 'baza') cursor = conn.exec('SELECT * FROM TABLE (WOLNE_GODZ(1,1, TO_DATE('26-05-2010', 'DD-MM-YYYY')))') while r = cursor.fetch() puts r.join(',')%> A <% end cursor.close conn.logoff
tyle że nadal nie wyświetla mi rekordów z bazy.
Dałem sobie tam literke ‘A’ i ją wyświetla tyle razy ile wierszy powinno mi zwrócić więc warunek działa…tyle że nie widać zawartości tabeli.[/quote]
Polecam poczytać o stdout i różnicy między <%= a <%, powinno pomóc (;

[edit]
aa no i popatrz proszę w logi, tam powinieneś znaleźć też drobną wskazówkę (:

Serdeczne dzięki…już wszystko jest tak jak być powinno:)
Na przyszłość…bo może ktoś tu zajrzy:

[code]conn = OCI8.new(‘baza’, ‘baza’)
cursor = conn.exec(‘SELECT * FROM TABLE (WOLNE_GODZ(1,1, TO_DATE(‘26-05-2010’, ‘DD-MM-YYYY’)))’)

while r = cursor.fetch()%>
<%= r[4]%> -------- tutaj wyswietlam kolejne kolumny wiersza
<%= r.join(’,’)%> ------- a tutaj całe wiersze
<%end
cursor.close
conn.logoff[/code]
Jeszcze raz dziękuje:)

Oj nie jest! Jest za to: “głupio źle i brzydko” :wink: Jeśli chcesz the rails way – to poczytak książki i dokumentację bo masz spore braki.

Oj nie jest! Jest za to: “głupio źle i brzydko” :wink: Jeśli chcesz the rails way – to poczytak książki i dokumentację bo masz spore braki.[/quote]
true

@michal_sz

Pewnie myślisz, że konwencje są głupie i że czepiamy się bo jesteś początkujący, ale tak nie jest.
Uwierz mi - zajmuję się teraz serwisem, który był pisany na szybko i na odwal się. I nie było aż takiego natłoku “fak upów” jak w tych kilku fragmentach kodu, które tu zamieściłeś. W każdym razie utrzymywanie tego serwisu to koszmar. Każda nowa rzecz, którą chce napisać zajmuje mi 2 - 4 razy więcej czasu niż bym sie spodziewał pisząc coś takiego w serwisie napisanym zgodnie z konwencją.

Nie chodzi o dogmatyczne trzymanie się wzorców. Chodzi o Twoją wygodę. No i o to żebyś potem nie miał czkawki jak oddasz komuś serwis…

Macie racje…ale od czegoś trzeba zacząć;)…teraz mogę to już zmieniać i ulepszać:)
Pozdrawiam