2013-12-19 53 views
0

全部,django模式如何被位過濾

我想使用一個整數來存儲用戶驗證狀態。例如:有以下信息需要驗證:電子郵件地址,公民身份證,駕駛執照。定義如下: 0x00000001表示用戶提交的郵箱地址。 0x00000002表示用戶的電子郵件已被驗證並通過。 0x00000005表示用戶的電子郵件地址不正確。

0x00000010表示用戶提交的公民ID。 0x00000020表示用戶的公民身份證已經過驗證並通過。 0x00000050表示用戶的公民ID不正確。

0x00000100表示​​用戶提交的驅動器許可證ID。 0x00000200表示用戶的驅動器許可證ID已被驗證並通過。 0x00000500表示用戶的驅動器許可證標識不正確。

我想過濾用戶的電子郵件已經過驗證。我怎麼能通過django模型來過濾它。我想要得到的是狀態& 0x0000000f == 2.

非常感謝。

回答

0

我不會嘗試使用這種方法存儲在您的數據庫中。爲什麼不簡單地使用三個SmallIntegerFields,如status_email,status_citizenstatus_drivelicense,它們可以保存值0(已提交),1(已驗證)和-1(不正確)? 這對於您的應用程序邏輯以及在數據庫中進行過濾來說要簡單得多。

你能解釋一下你爲什麼要按照自己的方式對信息進行編碼的原因嗎?