如何动态建立关联?例如:
current_customer.company.association(:tenders).order('created_at DESC')
答案 0 :(得分:2)
我猜你想要将关联传递给其他方法。您正在寻找的是send(:method_name,* args)
所以它会是
passed_in_association = :tenders
if( [:tenders,:orders,:users].include?(passed_in_association) ) #for security probably better to add it to a before filter.
current_customer.company.send(passed_in_association).order('created_at DESC')
end
答案 1 :(得分:1)
我不确定你要做什么,但是你可以使用send
如果你想使用一个变量来访问一个关联(毕竟它只是另一种方法):
current_customer.company.send(:tenders).order('created_at DESC')