Używałem rails_admin v0.7.0 z gemem prześwitu z powodzeniem do tego punktu. Próbowałem zaktualizować rails_admin do v1.0 dzisiaj, ale otrzymuję niezdefiniowany błąd zmiennej lub metody dla current_user
. W wersji 0.7.0 wydaje się, że RailsAdmin::MainController
dziedziczy po ApplicationController
, podczas gdy w wersji 1.0 dziedziczy bezpośrednio od ActionController::Base
, co wyjaśniałoby, że current_user
jest teraz niezdefiniowane (uważam, że current_user
jest zdefiniowane w ApplicationController
z klejnotem czystości). Jednak, ponieważ nie znajduję nikogo innego z tym problemem, myślę, że muszę czegoś nie zauważyć.'current_user' niezdefiniowany w rails_admin z zezwoleniem
Nie byłem tym, który ustanowił zezwolenie na tę aplikację, ale nie sądzę, że robimy coś niestandardowego, co wpłynęłoby na to. Clearance::Controller
jest zawarty w ApplicationController
. Brak specjalnej definicji current_user
.
config/inicjalizatory/rails_admin.rb
RailsAdmin.config do |config|
# Popular gems integration
## Clearance
config.authorize_with do |controller|
unless current_user.admin?
redirect_to(
main_app.root_path,
alert: "You are not permitted to view this page"
)
end
end
config.current_user_method { current_user }
end
Świetna odpowiedź dla wydania 'rails_admin'. –
Potrzebowałem tego do integracji z Sorcery w aplikacji Rails 5, dzięki! –
Zmagałem się z tym problemem przez * godziny *. Dzięki! – daybreaker