그래서 게시 요청을하고 검색 결과를 볼 수 있지만 새로 고침을 클릭하면 누락 된 요청 요청 오류가 발생합니다.검색 결과를 얻는 방법
본질적으로 검색 결과를 얻을 수 없지만 검색 결과를 POST 할 수 있습니다. 내가 어떻게 이럴 수 있니?
routes.rb :
resources :statistics, except: :show do
collection do
post :search, as: 'statistics_search'
end
end
오류 :
Routing Error
No route matches [GET] "/admin/statistics/search"
컨트롤러 코드 (statistics_controller.rb)
class SaasAdmin::StatisticsController < SaasAdminController
inherit_resources
def index
end
def search
@search = Search.new(params[:search])
@impressions = Impression.where("impressionable_type = 'Clip' AND impressionable_id = ? AND impressions.created_at BETWEEN ? AND ?", @search.clip, @search.start_date, @search.end_date)
render 'index'
end
end
감사합니다!
업데이트 오류
NoMethodError in SaasAdmin::StatisticsController#search
undefined method `each' for nil:NilClass
def initialize(params = {})
params.each do |k, v| < --- this is what it's referring to.
send("#{k}=", v)
end
end
search.rb
class Search < ActiveModel::Name
attr_accessor :clip, :start_date, :end_date
extend ActiveModel::Naming
include ActiveModel::Conversion
def initialize(params = {})
params.each do |k, v|
send("#{k}=", v)
end
end
def start_date=(date)
@start_date = Date.parse(date)
end
def end_date=(date)
@end_date = Date.parse(date)
end
def persisted?
false
end
end
를 업데이트 할 수 있습니다하는 good Railscast about how to implement this functionality here
를 참조 오류 MSG와도 오류 ... 업데이트 \ –
을 포함 할 수 있습니다. –
컨트롤러 코드를 게시 할 수 있습니까? –