django 資料匯入匯出

2021-08-21 06:42:56 字數 2624 閱讀 4853

這是大概一年前面試的時候一位面試官問我的問題,後來就一直想要整理一下筆記

寫在最前面的小備忘,在django中單獨執行某個python檔案,需要新增如下

import os

os.environ.setdefault(

"django_settings_module"

,"mysite.settings"

)import django

if django.version >=(1

,7):

#自動判斷版本

django.setup(

)

shell終端

使用django環境的終端 python manage.py shell,可以直接建立一些資料

$ python manage.py shell

>>

> from blog.models import blog

>>

> blog.objects.create(title=

"i am blog", content=

"hello,this is a blog test"

)

批量匯入指令碼

from blog.models import blog

f =open

('oldblog.txt'

)for line in f:

title,content = line.split(

'****'

) blog.objects.create(title=title,content=content)

#如果匯入過程中出錯或者手動匯入一部分,重新匯入害怕資料重複,可以使用

#blog.objects.get_or_create(title=title,content=content)

f.close(

)

fixture

#匯出資料

#匯入資料

#根據自己的models,建立如下類似json檔案

python manage.py loaddata fixture.json

[},

}]

model.objects.bulk_create()

在django中執行

from blog.models import blog

f =open

('oldblog.txt'

)bloglist =

[blog(title=line.split(

'****')[

0], content=line.split(

'****')[

1])for line in f]

f.close(

)blog.objects.bulk_create(bloglist)

django-import-export庫

使用django-import-export庫,匯入匯出資料,支援csv、xls、json、html等格式

#安裝django-import-export

pip install django-import-export

配置settings.py

……'import_export',

)

#拉取所有的靜態檔案

python manage.py collectstatic

#在admin.py 建立resource、對應的admin,export_order:設定匯出欄位的順序

from import_export import resources

from core.models import book

from import_export.admin import importexportmodeladmin

class

bookresource

(resources.modelresource)

:class

meta

: model = book

export_order =

('id'

,'name'

,'author'

,'author_email'

)@admin.register(book)

class

bookadmin

(importexportmodeladmin)

: list_display =

('name'

,'author'

,'author_email'

) search_fields = list_display

date_hierarchy =

'date'

resource_class = bookresource

支援自定義匯出方式

參考:

自強學堂

django import / export實現資料庫匯入匯出

Django 資料匯入和匯出

本文主要講資料庫的遷移方法,包含不同資料庫,如 sqlite3,mysql,postgresql 之間資料遷移方案,以及資料在不同機器上遷移方案 1 1 python manage.py dumpdata blog blog dump.json 1 python manage.py loaddata...

Django 資料匯入和匯出

本文主要講資料庫的遷移方法,包含不同資料庫,如 sqlite3,mysql,postgresql 之間資料遷移方案,以及資料在不同機器上遷移方案。簡單的資料匯出與匯入 簡單的遷移 python3 manage.py dumpdata blog blog dump.jsonpython3 manage...

匯入匯出資料

從檔案中裝載資料 hive load data local inpath overwrite into table t2 partition province beijing local linux本地的檔案。無local 是hdfs的檔案 注意 從本地檔案系統中將資料匯入到hive表的過程中,其實...