어제까지 모든 것이 잘 작동하고 있었지만 오늘은 앱을 열었고 위에서 언급 한 오류로 저를 환영했습니다. application_controller.rb NoMethodError in Home # index
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_filter :save_controller
after_filter :store_location
rescue_from CanCan::AccessDenied do |exception|
flash[:error] = "Access denied."
redirect_to root_path
end
갱신 2 - - 세션 컨트롤러
class Devise::SessionsController < DeviseController
# POST /resource/sign_in
def create
if valid_email?(params[:user][:email] , params[:user][:password]) || params[:user][:password].blank?
flash[:error] = "Email or password is incorrect"
redirect_to :back
else
self.resource = warden.authenticate!(auth_options)
set_flash_message(:error, :signed_in) if is_flashing_format?
sign_in(resource_name, resource)
respond_with resource, :location => after_sign_in_path_for(resource)
end
end
갱신 3
다음은 오류가
app/views/devise/registrations/_errors.html.slim where line #5 raised:
undefined method `each' for "Signed in successfully.":String
Extracted source (around line #5):
- if flash[:error]
h4 Error messages
ul
- flash[:error].each do |error|
li= error
- if flash[:error_validate_card]
= flash[:error_validate_card]
업데이트 보여지고있는 부분이다뷰 -> 고안 -> Registerations -> 파일
<%= form_for(CreativeRequestUser.new,:url=>app_creative_requests_path(),:html=>{:method=>:post,:id=>"creative_request_form"}) do|f| %>
또한 나는 최근에 내 응용 프로그램에서 rails_admin을 제거하지만, 심지어 그 후 잘 작동했다. [오류]
이 문제에 어떤 도움이 많이, 당신은 플래시의 오류를 통해 itterate하려는 사전 :
플래시 [: 오류]가 문자열로 표시됩니다. 성공 메시지는 플래시 [: 오류]로 지정됩니다. 컨트롤러 코드를 보여줄 수 있습니까? – Debadatt
"Signed in successfully.": 문자열은 배열이 아닌 플래시 문자열이며, 문자열에는 각 메서드를 사용할 수 없습니다. –
플래시 확인 [: 오류] –