2014-11-03 55 views
0

我在Django(v1.5)中繼承了一個使用MySQL作爲後端的應用程序。不幸的是,日期記錄在表格中並不能很好地按日期排序。即Django中的MySQL表更改

+------------+--------------+------+-----+---------+----------------+ 
| Field  | Type   | Null | Key | Default | Extra   | 
+------------+--------------+------+-----+---------+----------------+ 
| id   | int(11)  | NO | PRI | NULL | auto_increment | 
| datey  | int(11)  | NO |  | NULL |    | 
| datem  | int(11)  | NO |  | NULL |    | 
| dated  | int(11)  | NO |  | NULL |    | 
| dateh  | int(11)  | NO |  | NULL |    | 
| datemin | int(11)  | NO |  | NULL |    | 
| dates  | int(11)  | NO |  | NULL |    | 
| detail  | varchar(45) | NO |  | NULL |    | 
+------------+--------------+------+-----+---------+----------------+ 

基於這種模型結構。我需要:

  • 添加一個新的字段(稱爲rundate),它可以存儲的實際日期
  • (的DateField)轉換所有先前項,以便他們有一個填充。

什麼是最好的或推薦的方法來做到這一點,而不會丟失我以前的所有數據?

感謝,

回答

2

您可以添加遷移(連南)中,你將

  • 增加(與schemamigration)
  • 進行數據遷移將處理所有記錄的新數據字段,轉換舊數據,寫入新字段
  • 可選:添加模式遷移以刪除舊字段
+1

[Docume南部地區在這裏](https://south.readthedocs.org/en/latest/)。 – Matthias 2014-11-03 08:26:42