Поскольку ваша таблица, похоже, не имеет первичного ключа, прочитайте Руководство по миграции Rails и напишите его, чтобы добавить столбец id
в вашу таблицу.
def change
add_column :business, :id, :primary_key
end
Как описано в документации метода to_param
, он возвращает nil
, если ваш объект еще не был сохранен.
Это потому, что ссылка на объект, которого нет в базе данных, на самом деле является неработающей ссылкой. Убедитесь, что ваш объект сохраняется перед попыткой ссылки на него.
<td><%= link_to 'Show', business %></td>
Это может быть проблемой. Вы должны ссылаться на URL , а не на модель . Используйте помощника, чтобы получить тот, который ссылается на объект:
<td><%= link_to 'Show', business_path(business) %></td>
Та же проблема возникнет здесь, я полагаю:
<td><%= link_to 'Destroy', user, ... %></td>
Вы должны заменить эту строку на:
<td><%= link_to 'Destroy', destroy_user_path(user), ... %></td>