0
我Category
模型这样相关的外键:如何获得向下仅在Django用户的下降的ModelForm
class Task(models.Model):
'''
Task for the wedding plans
'''
description = models.CharField(max_length=128)
owner = models.ForeignKey(User, default="bride")
category = models.ForeignKey(Category)
class Category(models.Model):
user = models.ForeignKey(User)
name = models.CharField(max_length=128)
budget = models.DecimalField(default=0.0, decimal_places=2, max_digits=8, help_text="Amount in dollars ($)")
class Meta:
verbose_name_plural = "Categories"
在我forms.py
:
class CategoryForm(ModelForm):
class Meta:
model = Category
exclude = ['user']
class TaskForm(ModelForm):
class Meta:
model = Task
exclude = ['owner']
# views
form = TaskForm()
当我打电话{{ form }}
在模板,它显示所有用户创建的类别。但我想显示仅由登录用户创建的类别。怎么做?
我下面你的第二个方法。但我得到'KeyError所有者'错误。 – pynovice
@ user2032220,如果用'self.owner.queryset = Task.objects.filter(owner = user)替换self.fields ['owner']。queryset = Task.objects.filter(owner = user) '? – falsetru
''TaskForm'对象没有属性'owner' – pynovice