2011-08-30 10 views
0

目前,我正在爲GPL應用程序(e-cidadania)開發一個辯論模塊(很像Scrum /看板電路板),而且我沒有任何有關複雜後端的經驗。我已經爲它開發了一個基本的前端,但現在我不知道我應該使用哪種方法來保存和操作表和筆記,用於ajax和django後端。如何開發類似Scrum的電路板的後端

該表可以是N行和N列,每行和每列在表格中都有名稱和位置。每個音符還有一個位置,文本和註釋(由django評論框架管理)。

我想存儲每個音符的父元素(所以我可以稍後放置它)並存儲行和列的名稱,如CSV字符串。這是一個好方法嗎?

當前前端的屏幕截圖:http:// ur1。 ca/4zn4h

更新:我差點忘了,前端已經完成了jQuery Sortables(因此用戶可以根據自己的喜好移動筆記)和CSS3。

回答

0

你只需要在Django中對你的域進行建模(也就是看起來像scrum板的討論)。先用簡單的英文思考吧,像這樣:

有爭論。這些標準由按特定順序以行和列組織的標準組成。這將創建單元格,其中可以包含註釋。

然後,您可以設置工作將其轉換爲模型類。不要過分擔心它們所包含的領域,最重要的一點是關係(所以ForeignKey位):

class Debate(models.Model): 

    title = ... 

class Column(models.Model): 

    title = ... 
    order = ... 
    board = models.ForeignKey(ScrumBoard, related_name='columns') 

class Row(models.Model): 

    title = ... 
    order = ... 
    board = models.ForeignKey(ScrumBoard, related_name='rows') 

class Cell(models.Model): 

    column = models.ForeignKey(Column) 
    row = models.ForeignKey(Row) 

class Note(models.Model) 

    text = ... 
    cell = models.ForeignKey(Cell) 

這可能是你所需要的過於複雜,雖然。我不是你正試圖解決的問題的專家?我的建議是,Django很快 - 所以開始黑客攻擊,並且給它一個去,如果全都不對,那麼你可以回去幾步,清理你的數據庫並重試。在你的模型

你可能會發現它很有用South發揮,這確實數據庫遷移時,你不喜歡的東西添加/刪除/編輯字段。

+0

謝謝,我也認爲它開始黑客攻擊直到它最終工作。我只是問,看看是否有經驗的人在後端可以給我一些建議:) –