Skinner 5 ignorerer / lib klasse?

stemmer
12

Jeg har brukt denne metoden for modals i skinnene. Det fungerer veldig bra, men jeg har nettopp oppgradert til Rails 5 beta3, og nå er det ikke fungerer i produksjon.

Jeg får denne feilmeldingen:

Completed 500 Internal Server Error in 22ms (ActiveRecord: 0.9ms)

NameError (uninitialized constant ApplicationController::ModalResponder):

app/controllers/application_controller.rb:26:in `respond_modal_with'
app/controllers/tools_controller.rb:28:in `new'

Er min arv kastet av med Rails 5?

Min class ModalResponder < ActionController::Responderer i /libog arbeider i utvikling ...

Leter du etter informasjon om endringer med rails 5, men kilder er begrenset til min kunnskap.

Publisert på 05/04/2016 klokken 17:43
kilden bruker
På andre språk...                            


3 svar

stemmer
-2

Det står at det ikke kan finne den ApplicationController::Respondersom ble flyttet ut av Rails 4.2 i en egen perle.

Legg gem 'responders'til din Gemfile

Klasser i libikke autoloaded, må du kreve dem

Svarte 05/04/2016 kl. 18:11
kilden bruker

stemmer
9

Du må legge til en 'kreve' (på application.rb) med klassene inne i lib-mappen.

Som:

krever' ./lib/someclass'

Jeg anbefaler at du setter den i en Rails plugin.

Svarte 05/04/2016 kl. 19:24
kilden bruker

stemmer
18

Endre dette:

config.autoload_paths << Rails.root.join('lib')

til dette:

config.eager_load_paths << Rails.root.join('lib')

eager_load_pathsvil bli ivrig lagt i produksjon og on-demand i utvikling. Gjøre det på denne måten, trenger du ikke å kreve hver fil eksplisitt.

Se mer info om dette svaret .

Svarte 04/05/2017 kl. 16:22
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more