Tôi đang tự hỏi làm thế nào sau đây được thực hiện trong Rails 4 hoặc nếu tôi chỉ sử dụng phương pháp Rails 3 để sử dụng lambda có thể vượt qua một đối số theo cách tương tự với 4 như tôi làm với 3.
Tôi khá mới với Rails 3 và đang cố gắng thực hiện một số mẫu chạy Rails 4.
Đây là mã Rails 3 của tôi:
class Person < ActiveRecord::Base
scope :find_lazy, lambda {|id| where(:id => id)}
end
# In console I can call
Person.find_lazy(1)
Vì vậy, nếu đây là cách Rails 4 là sử dụng -> {}, thì đó là lambda, phải không? scope :all_lazy, -> { select("*") }
Điều gì xảy ra nếu tôi cần một cuộc tranh luận. Tôi đã thử một vài ý tưởng khác nhau và nhận được lỗi đối số trong bảng điều khiển khi sử dụng -> {}.