나는이 Ajax 요청을하지만, 어쨌든, 나는 아직도 건은 $.ajax({type: POST, url: add_timespan, data: {to_find_id: 192148455}, success:function(){alert(1);}});
왜 내 아약스 post.request 내 메서드를 호출하지만 아무것도하지 않습니다?
를 얻을 :
Started POST "/subgroups/519716477/add_timespan" for 127.0.0.1 at 2014-04-03 14:54:44 +0200
Processing by SubgroupsController#add_timespan as */*
Parameters: {"to_find_id"=>"192148455", "subgroup_id"=>"519716477"}
←[1m←[36mUser Load (0.0ms)←[0m ←[1mSELECT "users".* FROM "users" WHERE "users"."id" =? LIMIT 1←[0m [["id", 702273327]]
Redirected to http://localhost:3000/
Completed 302 Found in 0ms (ActiveRecord: 0.0ms)
당신이 볼 수 있듯이, 내 방법을 시작, 심지어 PARAMS를 전달하지만, 그렇지 않은 내 하위 그룹에 시간 간격을 추가하지 않기 때문에 완료하십시오.
이유를 찾을 수 없습니다. 도와 주시겠습니까?
편집 :
def add_timespan
RTimespan.create(timespan_id: params[:to_find_id].to_s, subgroup_id: @subgroup.id.to_s)
end
그리고 언급 한 바와 같이 arieljoud이 :도에
before_action :set_subgroup, only: [:show, :edit, :update, :destroy, :remove_admin, :search_user, :remove_user, :process_add_user, :process_add_admin]
before_action :login_required
내가 편집 한 내 before_action : 예 나는 전에 필터가 언급 Paul Richter으로, 여기 내 컨트롤러 방법입니다 가지고있다 : add_timespan.
before_action :set_subgroup, only: [:show, :edit, :update, :destroy, :remove_admin, :search_user, :remove_user, :process_add_user, :process_add_admin, :add_holiday]
before_action :login_required
지금은 더 이상 리디렉션을 가지고 있지 않지만, 지금은 말한다 :
Started POST "/subgroups/519716477/add_timespan" for 127.0.0.1 at 2014-04-03 15:28:24 +0200
Processing by SubgroupsController#add_timespan as */*
Parameters: {"to_find_id"=>"310026848", "subgroup_id"=>"519716477"}
←[1m←[35mUser Load (0.0ms)←[0m SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 702273327]]
Completed 404 Not Found in 0ms
ActiveRecord::RecordNotFound (Couldn't find Subgroup without an ID):
app/controllers/subgroups_controller.rb:161:in `set_subgroup'
app/controllers/application_controller.rb:11:in `reset_timezone_to_utc'
set_subgroup 방법 :
def set_subgroup
@subgroup = Subgroup.find(params[:id])
end
편집 : 내가 밖으로 before_action :login_required
댓글을 달았습니다 . 내가 지금 어떤 실수를하는지 알아? 이전과 동일합니까? 나는 필사적이되기 시작했다.
@kirti-thorat : 아이디어를 시도했지만 여전히 작동하지 않습니다. 아이디어를 사용하면 4 행의 첫 번째 로그로 돌아갑니다. 다른 의견이 있으십니까? 자세한 내용은
:
당신의 PARAMS 해시 당으로def set_subgroup
if params[:id].present?
@subgroup = Subgroup.find(params[:id])
elsif params[:subgroup_id].present?
@subgroup = Subgroup.find(params[:subgroup_id])
end
end
, 당신이 SubgroupsController#add_timespan
요청 subgroup_id
을 얻고있다 : LINK TO MY RAILS-FORUM POST
컨트롤러 메서드 코드를 볼 수 있습니다. –
어딘가에 리디렉션 될 수있는 before_filter가 있습니까? 어쩌면 사용자가 before_filter와 관련이 있을까요? 로그에 뭐라고 쓰여 있니? – arieljuod
Arieljuod 말이 맞아. 'login_required'가 아마도 리다이렉트를 야기한 것 같습니다. 하지만 마지막 편집 내용을 이해하지 못했고, 특히'before_action'에 어떤 변화를 주 었는지, 특히 (어떤 식으로': add_timespan' 메서드를 추가했는지) 변경 했습니까? –