Я немного сбит с толку.
Моя конечная цель в проекте RoR - получить один случайный профиль из моей базы данных.
Я подумал, что это будет примерно так:
@profile = Profile.find_by_user_id(rand(User.count))
Он продолжал выдавать ошибку, потому что user_id
0 не существует, поэтому я вытащил его части, чтобы проверить, что происходит:
@r = rand(User.count)
<%= @r %>
Это возвращает 0 каждый раз. Так что же происходит? Я зарегистрировал 5 поддельных пользователей и 5 связанных профилей, чтобы проверить это.
Если я возьму Profile.find_by_user_id (rand (User.count))
и перепишу его как
Profile.find_by_user_id(3)
, он будет работать нормально.
] User.count
тоже работает. Поэтому я думаю, что rand ()
не может принимать ввод, кроме статического целого числа.
Я прав? Что происходит?