Прежде всего, URL "http://localhost:3000/deliver/123
" соответствует любому правилу маршрутизации по умолчанию. Однако только после того, как вы объявите «ресурс», он сгенерирует такой RESTful URL.
В вашем случае просто реализуйте метод to_param модели Deliver:
class Deliver < ActiveRecord::Base
def to_param
return self.deliveraddress
end
end
он сгенерирует URL, который вы хотите, вызвав метод url_for, например link_to @deliver
Не забудьте убедиться, что в вашей базе данных есть уникальные адреса доставки, чтобы вы никогда не нашли дублированных записей с одним адресом.
После этого вам необходимо обновить методы поиска в действиях:
def show
@deliver = Deliver.find_by_deliver_address!(params[:id])
end
Надеюсь, этот ответ будет полезен.