我正在尝试向用户帐户添加首选项。每个偏好都是真/假值,它需要保持这种方式。
由于每个帐户可能有多个首选项,我想知道如何在我的模板中循环它们,并在整个应用程序中轻松使用这些首选项。
前任。我想显示用户名和他们喜欢的所有颜色。
模型.py
class UserColors(models.Model):
white = models.BooleanField(_("White"))
black = models.BooleanField(_("Black"))
class Account(models.Model):
user = models.OneToOneField(User, unique=True, verbose_name='user', related_name='account')
colors = models.ForeignKey('UserColors', null=True)
视图.py
class UserView(DetailView):
context_object_name = 'account'
template_name = 'detail.html'
def get_object(self, queryset=None):
return self.request.user
模板.html
user: {% account.user.username %} <br>
colors:
# the following would be ideal instead of doing multiple ifs in search for true/false values
{% for color in account.colors %}
color.name
{% endif %}
输出
user: userName
colors: white, black