【发布时间】:2016-01-21 19:00:03
【问题描述】:
我有三个模型。客户、工作和收据。
客户有很多工作,工作有很多收据。 Job 属于 Customer,Receipts 属于 Job。
在我的客户删除定义中,我想删除所有客户的工作和工作收据。这是我的控制器代码
def destroy
customer = Customer.find(params[:id])
customer.jobs.receipts.destroy_all #this line crashes
customer.jobs.destroy_all
customer.destroy
redirect_to customers_url
redirect_to show_todays_jobs_path
end
说 customer.jobs.receipts.destroy_all 的行会抛出一个错误,指出收据方法未定义。
但是,在我的 Jobs 控制器中,jobs.receipts.destroy_all 可以正常工作。在客户控制器中,如果我删除线路以销毁收据,那么它也可以正常工作。
我不明白为什么我无法删除客户控制器中的收据。请帮帮我。提前致谢
【问题讨论】:
-
你能显示 Jobs 控制器吗?
-
我们需要查看您拥有的模型关系。
标签: ruby-on-rails ruby