Является ли form_path переменной, которую вы определяете где-то еще в контроллере?Помимо понимания этого, похоже, что он должен работать.
Вместо того, чтобы связываться с реферером, вы можете поместить скрытое поле в форму, основанную на том, откуда оно исходит, и извлечь его из хэша params.
Что-то вроде:
hidden_field_tag :location, controller_name
Затем в контроллере:
if params[:location] == yadda yadda