Tôi đang gửi dữ liệu qua nhận và tôi cần đặt nó vào một mảng int để được sử dụng trong tìm kiếm. đây là mã của tôi:đường ray ruby chuyển đổi các tham số thành int mảng
@found = Array.new
params['candidate'].each do |c|
@found << c.to_i
end
url của tôi trông như thế này
http://localhost:3000/export/candidate?candidate[]=3&candidate[]=4&commit=Export
Nếu nó làm cho bất kỳ sự khác biệt Tôi đang sử dụng nó cho việc này tìm
@candidate = Candidate.find(:all, :conditions => ["candidates.id IN ?", @found])
Nhưng hiện nó không đặt nó vào một mảng thực bởi vì tôi gặp lỗi này
Mysql::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4)' at line 1: SELECT * FROM `candidates` WHERE (candidates.id IN 4,2)
Dấu ngoặc bị thiếu xung quanh mảng
Cảm ơn và chào buổi sáng!
Alex
Cảm ơn sự giúp đỡ của bạn! điều này có ý nghĩa gì &:? – Alex
Đó là cách dễ dàng để truyền một khối chỉ gọi phương thức đã cho trên đối số được truyền vào khối. Có một lời giải thích tốt tại http://pragdave.pragprog.com/pragdave/2005/11/symbolto_proc.html – Gareth
Cảm ơn, ruby là một ngôn ngữ tuyệt vời! – Alex