Rails3-SQL查询在一个更;轨道;
我想知道您是否知道如何在 更多“轨道方式”Rails3-SQL查询在一个更;轨道;,sql,ruby-on-rails,model-view-controller,Sql,Ruby On Rails,Model View Controller,我想知道您是否知道如何在 更多“轨道方式” 我在“详细购买模型”中尝试过类似的方法 但是,当我检查值“saldo”时,它始终保持相同的原始值使用Rails方式编写问题,会恳求您 写 使用模型之间的关系来定义它们之间的关系 使用某些条件调用以生成SQL(自动且不可见) 所有这些步骤(以及更多步骤)都将在 使用RubyonRails,one(通常)不会直接生成SQL。但是来自数据库的数据是由(duh)模型建模的。Rails使用这些模型从数据库检索请求的信息。基本上,您可以说每个模型都与数据库中的一
我在“详细购买模型”中尝试过类似的方法
但是,当我检查值“saldo”时,它始终保持相同的原始值使用Rails方式编写问题,会恳求您
使用RubyonRails,one(通常)不会直接生成SQL。但是来自数据库的数据是由(duh)模型建模的。Rails使用这些模型从数据库检索请求的信息。基本上,您可以说每个模型都与数据库中的一个表相对应(至少对于简单的情况而言)。对不起,您有示例吗?我尝试使用Model.update_attribute()的回调、Model.where()的回调和Model.find()的回调来解决这个问题。。。不幸的是,似乎什么都没有work@Angelo,并不是说你知道铁路,我认为最好是发一个新问题。在这个问题中展示你已经拥有的,并告诉你哪些部分工作不正常。好的,我已经发布了一个[新问题](),试图以更好的方式解释我的问题
UPDATE buy_order_detail
SET saldo = saldo - detail_purchase.cantidad
FROM purchase_detail
INNER JOIN purchase ON purchase.id =
purchase_detail.purchase_id
INNER JOIN waybill ON waybill.id =
purchase.waybill_id
INNER JOIN buy_order ON buy_order.id =
waybill.order_id
INNER JOIN buy_order_detail ON buy_order.id =
buy_order_detail.order_id
WHERE purchase_detail.product_id = buy_order_detail.product_id
def after_create
pchs = Purchase.find(self.purchase_id)
wbl = Waybill.find(pchs.waybill_id)
bdr = BuyOrder.find(wbl.buy_order_id)
BuyOrderDetail.find_by_buy_order_id(bdr.id).where(:product_id => self.product_id).update_attribute(:saldo, buy_order_detail.saldo - cantidad)
end