2012-05-23 25 views
6

Tôi mới có đường ray. Tôi đã sử dụng redirect_to với params trong hành động của mình, nhưng bây giờ tôi không biết cách hiển thị các số params này theo quan điểm của tôi?redirect_to với thông số. Làm thế nào để vượt qua chúng để xem của tôi?

+0

Xin vui lòng gửi ở đây mã của câu lệnh chuyển hướng của bạn. – thesis

+0

user = params [: name] redirect_to: controller => 'private',: action => 'index',: user => user – user1312490

Trả lời

11

Hãy thử điều này biến thể:

  • redirect_to controller: 'thing', action: 'edit', id: 3, something: 'else'
  • redirect_to thing_path(@thing, foo: params[:foo])

Ngoài ra, link should be helpful for you này.

+0

Nếu bạn muốn lấy tên điều khiển và hành động từ trang trước, sau đó sử dụng 'Rails.application .routes.recognize_path (request.referrer) '. Nó sẽ xuất ra '=> {: controller =>" posts ",: action =>" show "}'. – Penguin

4

Thực ra nếu bạn đã gửi một thứ gì đó có chuyển hướng - bạn đã chuyển nó như tham số GET. Trong trường hợp này, bạn có thể truy cập chúng từ mã băm params của bạn.

Nếu bạn chuyển hướng như:

redirect_to :controller => 'users', :action => 'edit', :id => 1, :param_a => 1, :param_b => 2 

Bạn có url như:

http://localhost:3000/users/1/edit?param_a=1&param_b=2 

Vì vậy, bạn có thể truy cập :param_a:param_b theo quan điểm của bạn từ params băm:

<%= params[:param_a] %> 
<%= params[:param_b] %> 
+0

ok, bây giờ nó hoạt động. Nhưng làm cách nào để ẩn các thông tin này khỏi url của tôi? – user1312490

+0

Thực ra bạn không thể vì chúng là các tham số GET. – thesis

+0

có cách nào khác để chuyển các tham số của tôi tới chế độ xem không ?? – user1312490

Các vấn đề liên quan