Jestem całkiem nowy w Rails i byłem ciekawy, jakimi konwencjami posługują się eksperci, kiedy muszą skonstruować bardzo złożone zapytanie SQL, które zawiera wiele warunków. W szczególności, utrzymując kod czytelny i możliwy do utrzymania.Jaka jest konwencja dotycząca określania złożonych zapytań SQL w Railsach?
Istnieje kilka sposobów można myślę:
jednym wierszu, w zaproszeniu do find():
@pitchers = Pitcher.find(:all, "<conditions>")
Użyj predefiniowanych ciąg i przekazać go w:
@pitchers = Pitcher.find(:all, @conditions)
Użyj prywatną funkcję składową, aby powrócić zapytanie
@pitchers = Pitcher.find(:all, conditionfunction)
W pewnym sensie pochylam się w kierunku konwencji funkcji prywatnych członków, dodatkowo, ponieważ można przekazać parametry, aby dostosować zapytanie.
Jakieś przemyślenia na ten temat?
Doskonałe komentarze, dziękuję! – unknownuser
Cieszę się, że mogę Ci pomóc. Pozwólcie, że was zapytam: w jakim kontekście nazywacie 'find'? Kontroler? Inny model? Mam nadzieję, że nie zobaczę :) – nakajima
Ze sterownika. W ten sposób robię większość moich znalezisk. Spojrzę na popychanie ich do modelu. – unknownuser