8
Mam dwa modele - Question
, Tag
.Aby uzyskać dostęp do tabeli łączenia w konsoli Rails?
Chciałbym zrobić count
na liczbę rekordów w mojej tabeli łączenia questions_tags
.
Jak mogę to zrobić z konsoli Rails?
nie wiem o bardziej „Railsy” sposób to zrobić, ale ponieważ Twoje pytanie było o dostępie z poziomu konsoli, wyobraziłem cię” po prostu szukam szybkiego sposobu na policzenie ich do debugowania lub cokolwiek innego. Nie polecałbym powyższego kodu w produkcji. Jeśli potrzebujesz liczby tabel łączenia w swojej aplikacji, możesz rozważyć przeniesienie jej do prawdziwego modelu łączenia. –
Yeh ... masz rację ... to jest do celów debugowania. Po uruchomieniu tego rodzaju zapytań w tabeli łączenia, która ma wiele rekordów (np. 20K), zazwyczaj zajmuje to bardzo dużo czasu? Uruchomiłem go, prawie 2 minuty po tym, jak go opublikowałeś i nadal działa. – marcamillion
To zależy w dużym stopniu od bazowej bazy danych, ale jestem zaskoczony, że 'count (*)' zajęłoby w ogóle w czasie rzeczywistym. Większość DB zna liczność wszystkich swoich tabel bez konieczności ich obliczania. Jeśli twoje zapytanie jest bardziej złożone niż prosty przykład powyżej, może to być spowodowane brakiem indeksów na stole. Wydajność bazy danych to ogólnie bardzo złożona kwestia. –