值我有以下型號Django表單排除choicefield
class ActionConfirm(models.Model):
CONFIRM_METHOD = (
(u'ce', u'Certificate'),
(u'tf', u'Trainee Feedback'),
(u'ms', u'Multi Source Feedback'),
(u'rp', u'Reflection upon Practice'),
(u'ot', u'Other - Please add/describe')
)
confirm_method = models.CharField(max_length=2, choices=CONFIRM_METHOD)
user = User
和下面的表格
class ActionConfirmForm(forms.ModelForm):
class Meta:
model = ActionConfirm
,我知道我可以做
selected = ActionConfirm.objects.filter(user=user)
得到他們目前的選擇
那麼如何從他們已經選擇的confirm_method字段中排除值呢?
如果它是從一個數據庫我知道我可以做choices = ActionConfirm.objects.exclude(choice__in = selected)
但我不知道如何做它時,它是從元組元組。
只是爲了澄清 - 你試圖使它所以用戶只能創建'ActionConfirm'實例與'confirm_method'值*它們*沒有用於以前創建的'ActionConfirm'實例? – 2010-09-08 08:39:25
是的,這是正確的。我沒有把上面的ActionConfirm模型中的所有字段。還有一個用戶字段,並且selected =應該是ActionConfirm.objects.filter(user = user)而不是ConfirmChoices。現在應該更新 – John 2010-09-08 08:44:44