Rails: как использовать метод find для произвольного индекса - PullRequest
0 голосов
/ 28 января 2012

Я создал модель, в которой строка является уникальным идентификатором. Я создал миграцию, чтобы добавить индекс для этой строки и установить его как уникальный. Как я могу получить доступ к записи базы данных, просто передав ее уникальную строку идентификатора в метод поиска, например

@object = Object.find(params[:unique_id])

На данный момент все, что я получаю, это исключение ActiveRecord :: RecordNotFound ...

Не удалось найти объект с id = abc

... когда я пытаюсь получить доступ Object.find('abc')

Метод where не является альтернативой, поскольку возвращает мне отношение.

1 Ответ

1 голос
/ 28 января 2012

Object.find(:unique_id) поиск по столбцу 'object_id';Если вы хотите выполнить поиск по другому столбцу, используйте Object.find_by_[column_name]!(:unique_id).Это вызовет исключение, если запись не может быть найдена, как и метод find.

...