Я хочу включить модуль MultipartForm
в ApplicationController
, чтобы расширить функциональность для всех контроллеров с помощью методов из этого модуля.Я получил ошибку маршрутизации в ActionController до перезагрузки сервера rails
Каждый раз, когда я делал изменения в любых контроллерах в приложении, я получил эту ошибку. Поэтому я должен перезапустить свое приложение. Тогда это прекрасно работает.
От development.log
ActionController::RoutingError (uninitialized constant ApplicationController::MultipartForm):
app/controllers/application_controller.rb:8:in `<class:ApplicationController>'
app/controllers/application_controller.rb:3:in `<top (required)>'
app/controllers/artists_controller.rb:1:in `<top (required)>'
Мои application_controller.rb
является:
require_relative '../../lib/multipart_form'
class ApplicationController < ActionController::Base
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
#protect_from_forgery with: :exception
include MultipartForm
private
def default_serializer_options
{root: false}
end
end
Мои multipart_form.rb
является:
module MultipartForm
# Use in controller like: send_multipart_form(:artist => artist_params)
def send_multipart_form(send_params)
_method = params && params[:_method] ? params[:_method].to_sym : :post
RestClient.send _method, ActiveResource::Base.site.to_s + related_url, send_params
end
private
def related_url
_controller_path = params && params[:controller] ? params[:controller] : ""
_id = params && params[:id] ? params[:id] : ""
"#{_controller_path}/#{_id}"
end
end
Можете ли вы предложить решение, как расширить функциональные возможности контроллеров с модулем и не нужно для перезапуска сервера при изменении любого кода. Как это сделать в лучших рельсах 4 пути?
Некоторая информация:
Rails server => WEBrick 1.3.1
Rails version => 4.0.2
Env => development
Ruby version => ruby 2.0.0 (2013-11-22) [x86_64-linux]
'application_controller.rb: 8' показать мне эта линия пожалуйста –
линия 8 является:' включают MultipartForm' – wiseland
попытаться поместить 'mulitpart_form.rb' под 'you_app_name/lib/extras /'. –