従うことThis Devcsの登録コントローラを無効にするためのリンク。 基本的には、デフォルトの登録コントローラーであるDeviseをオーバーライドし、アクションの前フィルターを設定して、ユーザーが新しいユーザーを作成してからroot_path
などの任意のパスにリダイレクトするかどうかを確認する必要があります。
devise_for :users, controllers: { registrations: "registrations"}
アプリ/コントローラ/ registrations_controller.rb:登録コントローラオーバーライドするのconfig/routes.rbを中
アルターdevise_forライン
class RegistrationsController < Devise::RegistrationsController
before_action :check_new_registration_allowed?, only: [:new, :create]
protected
def check_new_registration_allowed?
redirect_to root_path unless @@allow_new_registration
end
end
は、私はグローバル@@allow_new_registration
を使用していることに注意してください。新しい登録が許可されているかどうかを確認する変数。管理者アクションの後にこれをオン/オフすることができます。あるいは、これらの情報をDBに格納して照会すると良いでしょう。
回答としてアップマークされています。これを送っていただきありがとうございます - 非常に役に立ちました! – dingalingchickenwiing