Nur wenn ich in Rails eine 404-Fehlerseite erstelle, verschwindet das von refile gepostete Bild. Wenn Sie den Code auf der Fehlerseite auskommentieren, wird das Bild angezeigt.
Der Code für die 404-Fehlerseite ist unten.
application_controller.rb
unless Rails.env.development?
rescue_from Exception, with: :render_500
rescue_from ActiveRecord::RecordNotFound, with: :render_404
rescue_from ActionController::RoutingError, with: :render_404
end
#Erstellen Sie ein Fehlerverzeichnis in Ansichten und 404 dort.html.erb/505.html.Erb erstellen
def render_404
render 'error/404', status: :not_found
end
def render_500
render 'error/500', status: :internal_server_error
end
config/routes.rb
Rails.application.routes.draw do
#Es wird in der Reihenfolge von oben ausgewertet, schreiben Sie es also unten
get '*path', to: 'application#render_404'
end
Wenn Sie die Schienenrouten im Terminal überprüfen,
GET /*path(.:format)
refile_app /attachments
Es war in der Reihenfolge von. Da Routen von oben ausgewertet werden, wird "get" * von "config / route.rb" ausgewertet, bevor "/ attachments", die URL der Refile, für die in "config / route.rb" nichts festgelegt ist, ausgewertet wird. Pfad ', zu:' application # render_404'` wurde ausgewertet.
Es ist in Ordnung, "refile_app / attachments" vor "GET / * path (.: Format)" auszuwerten.
Fügen Sie zunächst Folgendes zu initializers / refile.rb
hinzu.
Wenn refile.rb
nicht existiert, erstellen Sie eine neue.
config/initializers/refile.rb
Refile.automount = false
config/routes.rb
Rails.application.routes.draw do
mount Refile.app, at: Refile.mount_point, as: :refile_app #hinzufügen
get '*path', to: 'application#render_404' #Schreiben Sie unten
end
Wenn Sie die Schienenrouten im Terminal überprüfen,
refile_app /attachments
GET /*path(.:format)
Ich denke, es liegt in der Reihenfolge von.
Ich denke, dass / attachments
zuerst ausgewertet und das Bild angezeigt wird.
https://github.com/refile/refile#mounting Wie ich schrieb, musste ich die automatische Montage von Refile ausschalten und die Route selbst festlegen.
Recommended Posts