您的位置:首頁技術文章
文章詳情頁

python - Django中類似事務的實現方法?

瀏覽:88日期:2022-08-02 09:40:03

問題描述

class Category(models.Model): c_name = models.CharField(max_length=100)class Item(models.Model): '''外鍵關聯到Category''' i_name = models.CharField(max_length=100) category = models.ForeignKey(’Category’, related_name=’items’, null=True, blank=True)

表結構是這樣, 要實現在頁面上新建一個分類的時候, 可以在同一個頁面新建/編輯這個分類包含的項目和項目具體信息

目前想到的做法是, 頁面上有添加項目的按鈕, 點擊按鈕的時候就通過Ajax在數據庫中生成了新項目, 然后在保存分類的時候, 再把剛才的項目和分類做關聯;但這樣做的問題是, 如果編輯/新建分類的時候刷新了頁面, 或者其他原因沒有最終點擊保存的話, 數據庫中會增加很多沒有外鍵的Item數據

請問實現這個功能更好的解決辦法是什么? 或者說有什么辦法, 判斷在分類沒有成功保存的情況下, 回滾之前建立的項目?

問題解答

回答1:

我覺得頁面設計邏輯可以改一下,先完善分類信息,保存分類信息后,再在這個分類信息增加項目。這樣提交項目信息的時候分類信息肯定是有的。至于你說的情況,先創建項目,再賦予分類的話,肯定會產生無分類的項目,要不再加個頁面,查看所有無分類的項目,讓用戶去設置分類?

標簽: Python 編程
相關文章:
国产综合久久一区二区三区