Rails 3 - Как создать запись, если она не существует ИЛИ обновить существующие записи - PullRequest
2 голосов
/ 11 октября 2010

Я создаю таблицу разрешений для People & Books

В таблице разрешений у меня есть: Permission.ID, user.id, book.id

Я хочу, чтобы администратор мог устанавливать разрешения для пользователей <> Книги.

Когда пользователь выбирает разрешения и щелкает «Отправить» в контроллере Rails, должен ли я отправлять в / create или / update?

есть ли способ, которым я могу представить только одному из них, будь то новое или обновление, и сообщить Rails о создании или обновлении записи на основе того, существует ли запись в соответствии с UserID и BookID?

Спасибо

1 Ответ

2 голосов
/ 11 октября 2010

Если они редактируют существующую запись, просто подтвердите обновление. Если они создают новую запись, и вы убедитесь, что в ней нет дубликатов, попробуйте использовать find_or_create_by внутри вашего метода create.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...