/ / Railsy tworzą akcję z ajaxem bez formy - ruby-on-rails, ruby-on-rails-3

szyny tworzą akcję z ajaxem bez formy - ruby-on-rails, ruby-on-rails-3

Mam formularz postu służący do utworzenia postu, który działa dobrze, ponieważ nie jest to zbyt trudne.

Co jest potrzebne przed wstawieniem tytułu, treści potrzebuję posts id dzięki czemu mogę zrobić znacznie więcej procesów.

Więc postanowiłem stworzyć light box(contains no form) który wymienia całą kategorię i podkategorię. po kliknięciu kategorii muszę wykonać żądanie ajax, aby utworzyć rekord, wstawiając tylko kategorię do tabeli.

To jest mój kod jquery

    $(".selection").click(function(){
$("#category_id").val(category_id);
$.ajax({
type: "POST",
url: "/posts.json",
dataType: "json"
})
})

;

To jest moja akcja tworzenia

def create
unless post_params.nil?
@post = Post.new(post_params)
if @post.save
flash[:success] = "Post added successfully"
redirect_to action: :new
else
flash[:error] = "Post cannot add. Please try again after some time"
redirect_to action: :new
end
end

end

W jaki sposób mogę zmodyfikować powyższą skrzynkę akcji dla ajax submit. Czy ktoś może ci pomóc.

Odpowiedzi:

1 dla odpowiedzi № 1

Właśnie zapomniałeś wysłać dane w swoim Ajax Call. Powinieneś spróbować:

    $(".selection").click(function(){
$("#category_id").val(category_id);
$.ajax({
type: "POST",
url: "/posts.json",
dataType: "json"
data: {
id: the_id,
other_param: the_other_param
}
})
})

Mam nadzieję, że ci to pomoże!