2012-03-16 28 views
8

Tôi đang cố gắng Gửi biểu mẫu bằng cách sử dụng phương thức get. Trước đó tôi đã cố gắng một điều tương tự với form_tag và nó đã được làm việc nhưng bây giờ khi tôi thay đổi để một thẻ form_for, điều này dường như không hoạt động.Sử dụng thẻ form_for với phương thức get

<%- filter_path = params[:action] == "index" ? posts_path : sneak_peek_posts_path %> 
<%= form_for(@post_filter, :url=> filter_path, :method => :get) do |f| %> 

Tôi không gặp lỗi đường nào.

Trả lời

18

Bạn có thể chuyển các thuộc tính HTML thô bằng cách sử dụng :html nếu cần. Đối với Rails 3:

<%= form_for(@post_filter, :url=> filter_path, :html => { :method => 'GET' }) do |f| %> 

Cập nhật và trong Rails 4, mỗi @ andre.orvalho của gợi ý dưới đây, tham số method thể được cung cấp trực tiếp:

<%= form_for(@post_filter, url: filter_path, method: :get) do |f| %> 
+0

cảm ơn đã làm việc. – nightf0x

+1

bạn nên cập nhật câu trả lời của mình thành đường ray 4: <% = form_for (@post_filter, url: filter_path, phương thức:: get) do | f | %> –

+0

cách thêm đối số url vào đường dẫn url ??? –

2

Bạn hãy thử

<%= form_for(@post_filter, :url=> filter_path, :html => {:method => :get}) do |f| %> 
Các vấn đề liên quan