ActiveRecord で、has_many で定義した関連があるとき、その関連の件数を取得するのには、count, size, length の3つのメソッドがあります。さらに、0件かどうかを調べるためには、empty? や exists? といった問い合わせメソッドもあります。 これらの使い分けについて、なるべく分かりやすくなるように解説してみたいと思います。 はじめに、has_many関連とは、次のようなコード例における、company.users のことを指します。 class Company < ActiveRecord::Base has_many :users end class CompanyUsersController < ApplictaionController def index company = Company.find(params[:company_id
![ActiveRecord の has_many関連、件数を調べるメソッドはどれを使えばいい? - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/328185a030cb25a1d594868b8f281abf05d0a8ac/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9QWN0aXZlUmVjb3JkJTIwJUUzJTgxJUFFJTIwaGFzX21hbnklRTklOTYlQTIlRTklODAlQTMlRTMlODAlODElRTQlQkIlQjYlRTYlOTUlQjAlRTMlODIlOTIlRTglQUElQkYlRTMlODElQjklRTMlODIlOEIlRTMlODMlQTElRTMlODIlQkQlRTMlODMlODMlRTMlODMlODklRTMlODElQUYlRTMlODElQTklRTMlODIlOEMlRTMlODIlOTIlRTQlQkQlQkYlRTMlODElODglRTMlODElQjAlRTMlODElODQlRTMlODElODQlRUYlQkMlOUYmdHh0LWFsaWduPWxlZnQlMkN0b3AmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZzPTlkNjQyMGVjNDFhMjlkNzRhMDdlMjQwYTRhM2Y2OGE2%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBuYXkzJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz01NGQxNjhlZTE1MDc3Njc3ZDRlNWRlOWQ3NTI5Njk1Mw%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Da6ef17e183ecd7cb681d082098634b1b)