Ich verwende Rails 5 API und versuche, einen CKeditor WYSIWYG in einer Form mit angularJS 1. Ich verwende Rails 5.1.4, ckeditor 4.2 und Büroklammer 5.1.0. https://github.com/galetahub/ckeditor für die gem Implementierung und haben den Generator laufen:Rails 5, Ckeditor und Paperclip Fehler beim Laden und Suchen von Bildern
Ich habe die Richtungen von hier gefolgt
rails generate ckeditor:install --orm=active_record --backend=paperclip
Beim Versuch, auf „Browse Server“ oder laden Sie ein Bild auf dem Server über die ckeditor I Durchführung bin die folgenden Get-Anfrage:
Started GET "/ckeditor/pictures?CKEditor=js-ckeditor&CKEditorFuncNum=1&langCode=en" for 172.23.0.1 at 2017-10-24 01:59:04 +0000
Und ich dann die folgende Fehlermeldung erhalten:
ActionController::RoutingError (undefined method `layout' for Ckeditor::ApplicationController:Class):
ckeditor (4.2.4) app/controllers/ckeditor/application_controller.rb:2:in `<class:ApplicationController>'
ckeditor (4.2.4) app/controllers/ckeditor/application_controller.rb:1:in `<top (required)>'
Dies ist die Steuerung, wo der Fehler herkommt: https://github.com/galetahub/ckeditor/blob/master/app/controllers/ckeditor/application_controller.rb
Edit: Es stellte sich heraus, die Schienen 5 api nicht enthalten ActionView :: Layouts aus der Box, so fügte ich dies folgende meiner Application:
include ::ActionView::Layouts
Dies kümmerte sich um die undefinierte Methode "Layout". Jetzt habe ich jedoch einen anderen Fehler, der von demselben ckeditor-Controller kommt, nachdem die Get-Anforderung an die Indexaktion übergeben wurde. Ich benutze auch devise_token_auth und pundit für die Autorisierung und Authentifizierung.
Processing by Ckeditor::PicturesController#index as HTML
Parameters: {"CKEditor"=>"js-ckeditor", "CKEditorFuncNum"=>"1", "langCode"=>"en"}
Completed 500 Internal Server Error in 149ms (ActiveRecord: 0.0ms)
NoMethodError (undefined method `ckeditor_authorize!' for #<Ckeditor::PicturesController:0x007f5e7ac7dc30>):
Momentan habe ich eine temporäre Lösung. Zuallererst liegt das Problem bei der ActionController :: API. Ich konnte nicht sofort herausfinden, welche Module enthalten sein müssen, um alles reibungslos laufen zu lassen. Also, für jetzt habe ich ActionController :: API zu ActionController: Base geändert, um alle zugehörigen Module von base einzuschließen. Ich werde diese Antwort aktualisieren, indem ich meinen Controller-Vorgänger zurück in die API umschalte und die nötigen Module einbinde, wenn ich Zeit habe. Wenn jemand anderes dies herausgefunden hat, antworten Sie bitte :) –