![](/img/trans.png)
[英]Django: Use post() in UpdateView to populate form's fields with instance's existing field values
[英]UpdateView that creates or increments existing instance
我有一個 model 可以跟蹤以特定價值“購買”了多少物品。 例如,可以將物品視為股票,將價值視為購買價格。
class Inventory(models.Model):
item = models.ForeignKey(Item, on_delete=models.CASCADE)
quantity = models.PositiveIntegerField()
value = models.PositiveIntegerField()
class Meta:
db_table = 'app_version'
constraints = [
models.UniqueConstraint(fields=['item', 'value'], name='unique valued items')
]
現在,我正在嘗試編寫一個基於類的Create/UpdateView
,其中只需聲明以什么價格購買了哪些商品。 然后,視圖應該創建一個新實例或增加現有實例的數量。
我已經發現UpdateView
可能是最好的開始,因為我可以覆蓋get_object
方法來獲得這種“創建或更新”行為。 但是,我不確定如何進行遞增。
也許我也完全走錯了路,我在這里缺少一個更簡單的解決方案。 就如何解決這個問題獲得一些想法和意見會很棒。
太感謝了!
只需使用get_or_update方法。 它允許您知道它是新實例還是來自 db。 但是如果你想創建一個 api,使用django rest 框架是更好的方法。 它附帶了許多用於快速創建 api 的內置工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.