Параметры Rails обнуляются при ответе на формат CSV в производстве - PullRequest
1 голос
/ 04 февраля 2020

У меня странная проблема, которую я не могу понять, связанной с параметрами рельсов.

У меня есть контроллер, где я разрешаю любые параметры. В этом контроллере параметр (csv_type) определяет, какой CSV-файл мне будет отвечать. CSV типа registration или attendance, например.

Этот параметр встроен в URL через путь (например: abcs_path (@ ab c, формат: 'csv', csv_type: 'посещаемость') ) в результате /abcs/id.csv?csv_type=attendance.

я ожидал бы {"csv_type"=>"attendance", "controller"=>"abcs", "action"=>"show", "id"=>"45", "format"=>"csv"}, но в процессе производства у меня {"controller"=>"abcs", "action"=>"show", "id"=>"45", "format"=>"csv"}. csv_type больше нет.

Это работает безупречно локально, и я получаю все параметры. Также хорошо работает с приложениями для обзора Heroku. Также хорошо работает, когда я запускаю локально на RAILS_ENV=production.

Но в реальном производстве это не так. Также не работает на стадии, настроенной с RAILS_ENV=production. Несмотря на то, что приложения для просмотра также RAILS_ENV=production, что делает все это загадкой.

Идеи: - nginx несоответствие с доменом (подготовка и производство находятся на официальном домене, приложение для просмотра - домен Heroku, local is localhost). - sqreen каким-то образом перехватывает это - mime.types и https (попытался добавить csv в rails, но безуспешно). Не добавил nginx - некоторые конфигурации rails на params разрешают (хотя я делаю params.permit!) на before_action просто чтобы убедиться - какая-то переменная ENV испортилась больше ничего не могу придумать ???

Заранее спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...