2017-08-23 12 views
0

ここでを定義してBlazerのカスタム認証を取得しますか?Blazer(Rails)のカスタム認証

私は私のconfig/blazer.ymlでこの(アンコメント)ライン(Authentication > Other下READMEで説明したように)持っている:私は私のアプリを更新すると、私はこのエラーを取得する

before_action: :authenticate! 

を:

NoMethodError at/undefined method 'authenticate!' for #<Blazer::QueriesController:0x007ffe26447830> 

ことクラスはBlazer gemによって定義されます。どういうわけか、そのauthenticate!メソッドを追加/再定義するはずですか?

class Blazer::QueriesController < Blazer::BaseController 
    def authenticate! 
    true 
    end 
end 

しかし、私はブレザーの "新しいクエリ" をクリックすると、今、私はこのエラーを取得:

NoMethodError in Blazer::Queries#new undefined method `errors' for nil:NilClass 

のRails 4.2.5を

は私が定義されinitializers/blazer.rbファイルを追加してみました、Blazer 1.8.0

答えて

2

application_controller.rbにカスタムメソッドを追加する必要があります。次に、メソッド名をconfig/blazer.ymlに入れて配線します。

Deviseを認証に使用することをおすすめします。 Devise wikiは素晴らしい開始記事hereを持っています。ブレザーのエンジンとルートは、hereのように保護する必要があります。

+0

ありがとう、 'application_controller'は正しいです。あなたの最終的な2つの文章は、Blazer wikiがDevise経由で認証する場合、異なる手順があるので、人々を混乱させるかもしれません。https://github.com/ankane/blazer#deviseを参照してください。コメントを削除したり変更したりすると、私はasnwerを受け入れます。ありがとう – Justin

+0

readmeからルート保護を含めるために私の答えが更新されました。 –