В моем приложении я использую carrierwave
для загрузки изображения.
Мой CampaignsController
- это обычный create action
def create
@campaign = Campaign.new(campaign_params)
respond_to do |format|
if @campaign.save
format.html { redirect_to @campaign, notice: 'Campaign was successfully created.' }
format.json { render :show, status: :created, location: @campaign }
else
format.html { render :new }
format.json { render json: @campaign.errors, status: :unprocessable_entity }
end
end
end
Все отлично работает в development
,но в production
после отправки / сохранения все идет не так.
Под этим я подразумеваю: В development
при отправке формы после сохранения она переходит к localhost:3000/campaigns/38
и моя форма: action="campaigns/38"
НО
В производство при отправке формы, после сохранения, вместо перехода к example.com/campaigns/38
, оно переходит к example.com/campaigns/campaigns/38
и мойформа меняется на: action="campaigns/campaigns/38"
.
Как вы можете видеть, что дополнительный campaigns
находится в URL, и я не уверен почему.
Это мой routes.rb
:
Rails.application.routes.draw do
resources :campaigns do
get 'changes', to: 'campaigns#deactivate_activate'
put 'changes', to: 'campaigns#deactivate_activate'
end
# match '*any' => 'application#options', :via => [:options]
end
Этомой ImageUploader
:
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
storage :file
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :large do
resize_to_limit(600, 600)
end
Мой Campaign
Модель:
class Campaign < ApplicationRecord
mount_uploader :image, ImageUploader
Это версия моего приложения:
ruby "2.3.1"
gem 'rails', '~> 5.1.6'
carrierwave (1.3.1)
Я тестировалс разными вещами, чтобы увидеть, в чем именно заключается проблема.Я тестировал с simple_form_for
, form_for
и даже с удаленными частями form
.
Все работает, пока = f.file_field :image
там нет.когда я удаляю = f.file_field :image
из моего form
, все прекрасно работает во всех ENV, но когда я добавляю его обратно, его, чем Production
ведет себя странно.
Любая помощь приветствуется и спасибо заранее!