欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django批量覆蓋更新實(shí)現(xiàn)示例

 更新時(shí)間:2023年09月20日 11:16:48   作者:alue  
這篇文章主要為大家介紹了Django批量覆蓋更新實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

批量處理用戶上傳的數(shù)據(jù)

利用bulk_create 方法能夠批量處理用戶上傳的數(shù)據(jù), 面對大量的上傳數(shù)據(jù)時(shí), 能夠提升數(shù)據(jù)入庫的速度.

這時(shí)候, 如果上傳的數(shù)據(jù)存在問題, 該怎么處理呢?

例如, 數(shù)據(jù)存在唯一性約束. 但用戶上傳的數(shù)據(jù), 存在重復(fù)項(xiàng).

這時(shí)候,有三種方式.

  • 中斷并回滾整個(gè)操作
  • 忽略錯(cuò)誤項(xiàng), 繼續(xù)其它項(xiàng)目的寫入
  • 覆蓋原先數(shù)據(jù).

前兩種比較好實(shí)現(xiàn).

psqlextra 插件實(shí)現(xiàn)

第三種,如果用的是PostgreSQL的話, 可以考慮用 psqlextra 插件來實(shí)現(xiàn).

例如:

from psqlextra.manager import PostgresManager
class Record(models.Model):  
    student = models.ForeignKey(to=Person, on_delete=models.CASCADE, verbose_name='參考人')  
    date = models.DateField(verbose_name='考核時(shí)間')
    class Meta:  
        verbose_name = '考核成績'  
        verbose_name_plural = verbose_name  
        unique_together = ("student", "date")
    objects = PostgresManager()

可以用下述方式, 實(shí)現(xiàn)批量覆蓋更新:

from psqlextra.query import ConflictAction
Record.objects.on_conflict(
                           ['student', 'date'], ConflictAction.UPDATE
                           ).bulk_insert(
                           [
                           dict(student=1,date='2021-02-11'),
                           dict(student=2,date='2021-03-11'),
                           ]
                           )

以上就是Django批量覆蓋更新實(shí)現(xiàn)示例的詳細(xì)內(nèi)容,更多關(guān)于Django批量覆蓋更新的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python如何輸出反斜杠

    python如何輸出反斜杠

    在本篇內(nèi)容中小編給大家整理了一篇關(guān)于python怎么輸出反斜杠的相關(guān)基礎(chǔ)文章,有興趣的朋友們可以學(xué)習(xí)參考下。
    2020-06-06
  • Python中常用操作字符串的函數(shù)與方法總結(jié)

    Python中常用操作字符串的函數(shù)與方法總結(jié)

    這篇文章主要介紹了Python中常用操作字符串的函數(shù)與方法總結(jié),包括字符串的格式化輸出與拼接等基礎(chǔ)知識,需要的朋友可以參考下
    2016-02-02
  • 使用matplotlib畫圖之坐標(biāo)軸不等距

    使用matplotlib畫圖之坐標(biāo)軸不等距

    這篇文章主要介紹了使用matplotlib畫圖之坐標(biāo)軸不等距方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Windows環(huán)境下Python3.6.8 importError: DLLload failed:找不到指定的模塊

    Windows環(huán)境下Python3.6.8 importError: DLLload failed:找不到指定的模塊

    這篇文章主要介紹了Windows環(huán)境下Python3.6.8 importError: DLLload failed:找不到指定的模塊,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 利用pycharm調(diào)試ssh遠(yuǎn)程程序并實(shí)時(shí)同步文件的操作方法

    利用pycharm調(diào)試ssh遠(yuǎn)程程序并實(shí)時(shí)同步文件的操作方法

    這篇文章主要介紹了利用pycharm調(diào)試ssh遠(yuǎn)程程序并實(shí)時(shí)同步文件的操作方法,本篇文章提供了利用pycharm遠(yuǎn)程調(diào)試程序的方法,且使用的編譯器可以是服務(wù)器中的虛擬環(huán)境的編譯器,可以實(shí)時(shí)同步本地與服務(wù)器的文件內(nèi)容,需要的朋友可以參考下
    2022-11-11
  • pandas dataframe拼接后index重新排序方式

    pandas dataframe拼接后index重新排序方式

    這篇文章主要介紹了pandas dataframe拼接后index重新排序方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • python scipy求解非線性方程的方法(fsolve/root)

    python scipy求解非線性方程的方法(fsolve/root)

    今天小編就為大家分享一篇python scipy求解非線性方程的方法(fsolve/root),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python批量修改文件夾及其子文件夾下的文件內(nèi)容

    python批量修改文件夾及其子文件夾下的文件內(nèi)容

    這篇文章主要為大家詳細(xì)介紹了python批量修改文件夾及其子文件夾下的文件內(nèi)容,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • 用代碼幫你了解Python基礎(chǔ)(1)

    用代碼幫你了解Python基礎(chǔ)(1)

    這篇文章主要用代碼幫你了解Python基礎(chǔ),使用數(shù)據(jù)類型和變量以及字符串和格式化的示例代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • python高手之路python處理excel文件(方法匯總)

    python高手之路python處理excel文件(方法匯總)

    用python來自動(dòng)生成excel數(shù)據(jù)文件。python處理excel文件主要是第三方模塊庫xlrd、xlwt、xluntils和pyExcelerator,除此之外,python處理excel還可以用win32com和openpyxl模塊
    2016-01-01

最新評論