Tôi có gọi ActiveRecord sau:ActiveRecord tồn tại? với các hiệp hội
@payment = account.business.payments.find(params[:id])
nào tìm kiếm thông qua các hiệp hội cho một payment
với id của params[:id]
. Tuy nhiên, điều này ném một ngoại lệ RecordNotFound.
Tôi muốn gọi số exists?
để xem liệu bản ghi có tồn tại để tránh ném ngoại lệ hay không. Làm Payment.exists?(account.business.payments.find(params[:id]))
không hoạt động.
Tôi chỉ muốn tìm kiếm payments
rằng belong_to
rằng business
và không phải tất cả thanh toán bằng cách thực hiện Payment.exists?(:id => params[:id])
. Đó là vì vậy tôi có thể biết rằng đó là khoản thanh toán của doanh nghiệp cụ thể của tài khoản.
Tôi có thể làm như thế nào?
Lưu ý: account
has_one business
và business
has_many payments
.
vì bạn đang tìm kiếm một id, bạn không thể sử dụng 'Payment.find (params [: id ]) 'thay vì có con đường thực sự dài đó? – sircapsalot
@sircapsalot: OP có thể muốn giới hạn phạm vi vì lý do bảo mật ... – PinnyM
@PinnyM Đó là lý do. – darksky