我有一些代码如下所示:
def checkout(batch, checkout_user)
...
if self.checkouts.build(removed_at: Time.now, checkout_location: batch.checkout_location, user: checkout_user, checkout_batch: batch)
update_attribute(:library_status, 'Checked out')
...
我不想再这样了
update_attribute(:library_status)
因为我不想将状态标记为“签出”。但是,我确实希望保存构建的签出(关联),因为如果
batch
对象未与
checkout
在
CheckoutBatch
型号:
has_many :catalog_items, through: :checkouts
batch.catalog_items
不会归还任何东西除非
结帐
是因为我得到了
catalog_items
通过结账。
那么,如何保存签出和回扣回调(就像更新属性一样),但不更新任何属性呢?我能打个电话吗
self.checkouts.save
? 是这样吗?