2011-04-12 41 views
14

有沒有辦法爲django模型自動創建數據?所以我創建了一個包含選項,文本字段,外鍵和所有內容的模型。有沒有一種自動的方式來填充數據?我真的不在乎它們是否是垃圾值,只是它在模式中有效。爲django模型自動創建數據的工具

如果有一種方法來指定某些模型並生成其他模型,那將非常酷。我知道'類別',不介意手動輸入這些內容。如果數據已經存在,它會生成有效的「條目」並將現有數據用作外鍵。

+0

可能的重複[製作一個Django Fixture從每個表中獲取100個項目,或者遵循外鍵](http://stackoverflow.com/questions/5599381/making-a-django-fixture-that-gets -100-items-from-each-table-or-follow-foreign-k) – DTing 2011-04-13 04:03:35

+0

[How to'bulk update'with Django?](http://stackoverflow.com/questions/12661253/how-to -bulk-update-with-django)| http://stackoverflow.com/questions/16853649/executing-python-script-from-django-shell – 2016-05-13 14:11:59

回答

18

我自己並沒有使用它,但django-autofixture看起來很像你以後的樣子。

其他類似的應用程序都列在此格:https://www.djangopackages.com/grids/g/fixtures/

+0

看起來很整齊,類似於它的外觀迪拉。 – 2011-04-13 11:28:25

+2

django-mockups似乎是django-autofixtures的一個更新近的分支:https://github.com/sorl/django-mockups。我想我應該仔細看看這些工具:-) – arie 2011-04-13 12:25:39

+1

幾年前,它看起來像'sorl/django-mockups'活動停止了,而django-autofixture有更近的活動。 – CoatedMoose 2015-01-28 21:44:49

5

http://www.generatedata.com/

這有沒有Django的具體

+0

我已經使用了很多次生成數據 - 需要注意的有用工具。 – 2011-04-12 22:47:16

6

django-dilla建專門來填充你的Django一些相當不錯的通用字段類型具有「垃圾郵件」數據的模型。以下內容是在定義了一些設置後直接從站點示例獲取的。它甚至可以讓你定義自己的「垃圾郵件發送者」,它將以特定的格式生成數據。

$ ./manage.py run_dilla --cycles=100 
Dilla is going to spam your database. Do you wish to proceed? (Y/N)Y 
Dilla finished! 
    2 app(s) spammed 900 row(s) affected, 2498 field(s) filled, \ 
    502 field(s) ommited. 
1

結帳Django的原型:https://github.com/sorl/django-mockups

它會自動生成任何模型數據,包括外鍵和多對多。您可以立即運行它,爲關係提供最大的深度,並且它會生成充分利用您的模型的數據。

您也可以編寫自己的生成器和工廠,以便對關係進行細化控制,並生成特定於應用程序的數據,而不僅僅是隨機數據。我剛剛完成了一個項目的使用,它爲我節省了幾天的時間來設置測試數據。

+1

幾年前,這個叉子上的活動看起來就停止了,而django-autofixture有更近期的活動。 – CoatedMoose 2015-01-28 21:37:35

0

Django-eadred被設計用於「生成樣本數據」。

正如其文檔狀態

德里德允許您使用模型製造商,工廠,夾具,隨機種子 - 無論你的需求是編程方式生成數據。

此外,eadred提供了庫函數,使生成數據更容易。