我有:
1。 models.py
class Post(models.Model):
ROOT_CHOICES = (
('Manufacturing', 'Manufacturing'),
('Transportation', 'Transportation'),
('Installation', 'Installation'),
('Operation', 'Operation'),
)
root1 = models.CharField(max_length=250, choices=ROOT_CHOICES, default='Manufacturing')
root2 = models.CharField(max_length=250, choices=ROOT_CHOICES, null=True, blank=True)
root3 = models.CharField(max_length=250, choices=ROOT_CHOICES, null=True, blank=True)
root4 = models.CharField(max_length=250, choices=ROOT_CHOICES, null=True, blank=True)
2。 views.py
def post_detail(request, slug):
post=get_object_or_404(Post, slug=slug)
if request.method == "POST":
form = CommentForm(request.POST)
if form.is_valid():
comment = form.save(commit=False)
comment.post=post
comment.save()
return redirect('data:post_detail', slug=post.slug)
else:
form=CommentForm()
template = 'data/post_detail.html'
context = {'form':form,'post':post}
return render(request, template, context)
第3。 HTML
<div class="col-sm-3">
<div class="post-parameters">
<p class="text-parameters"> Root: {{ post.root1 }}, {{ post.root2 }}, {{ post.root3 }}, {{ post.root4 }}</p>
</div>
</div>
现在,在我的html文件中看起来像这样:根:制造,无,无,无这是正确的。但是,我不想显示,如果有的话,无值,例如的根:制造
答案 0 :(得分:1)
您可以使用default_if_none
过滤器,因此:{{post.root1|default_if_none:""}}
或者,您可以专门检查每个值
{% if post.root1 %} {{post.root1}} {% endif %}