У меня нет доступа комментатора, поэтому отвечаю здесь.
Вы можете сослаться на один из примеров здесь Даже я делаю какие-то манипуляции.
Что Я в основном подозреваю, что это атрибут id
.
Во вложенных атрибутах, когда вы передаете ha sh без id
, это считается новой записью и создается. Когда вы передаете id
, он пытается найти запись для обновления. Когда вы передаете _destroy
, он помечается для уничтожения.
Обходной путь, о котором я мог подумать:
- Попробуйте сделать
id
столбец НЕ первичным ключом, чтобы Rails не попробуйте найти существующую запись. Но в этом случае вам нужно будет позаботиться о части обновления. ИЛИ - Создайте новый столбец
guid
, в котором у вас будет этот идентификатор, и сохраните столбец id
как столбец по умолчанию Rails. Просто настройте все ассоциации на guid