Вы можете решить свою проблему, указав маршрут, но лучше исправить здесь будет использовать инструмент маршрутизации Rails resource
, который будет называть ваши маршруты для вас. Это также позволит вам использовать правильно названный помощник requirement_path(id)
(обратите внимание на единственное requirement
, а не requirements
).
В вашем routes.rb:
resources :requirements, only: [:show, :create, :destroy]
Тогда requirement_path(1)
будет генерировать /requirements/1
, как вы ожидаете.
P.S. Причина, по которой вы получаете requirements.1
при использовании requirements_path(1)
, заключается в том, что все помощники маршрута принимают дополнительный аргумент, format
, который становится форматом (например, .xml
) в конце пути. Поскольку ваш помощник маршрута не ожидает каких-либо параметров маршрута, он превращает идентификатор в этот формат.
@ruby_newbie не нужно для этого, особенно учитывая, что в этом приложении не потребуется действие show. Спасибо за вашу помощь –