2011-06-04 44 views
1

我的admin.py似乎工作得很好,謝謝,但我的用戶可以選擇「保存」,即使沒有任何變化。這設置了對象的modified_date字段,這讓我很煩惱。Django - 避免保存不變的對象在管理

在這些情況下使用「保存」關閉管理員中的更改表單時,是否有強制取消的方法?這樣做是否可取?

+0

添加一塊JavaScript來隱藏保存按鈕,直到輸入/選擇/複選框已更改。 – 2011-06-04 15:54:49

+0

我喜歡那個,@pastylegs。它似乎遇到了我以後的用戶界面習慣用法。 – Dizzley 2011-06-05 17:38:27

回答

2

你可能可以編寫一個自定義的管理表單併爲每個管理可編輯的實體創建子類,其中save()它查看所有不是last_modified_date的字段(我假設你已經有了這個一致命名的你的模型),如果沒有變化,不叫super(YourAdminFormClassNamehere, self).save(*args, **kwargs),但如果這些領域的任何一個變化,它會。

(這是一個週末,否則我可能會添加一些示例代碼。這應該讓你一個有用的軌道,雖然)。

+0

謝謝。有用。我明白這是前進的方向。 – Dizzley 2011-06-05 17:39:40

+0

不客氣。 upvote怎麼樣? – 2011-06-05 21:27:54

+0

:-)有沒有一種簡單的方法來瀏覽表單中的字段? – Dizzley 2011-06-05 22:03:41