Gar*_*nzo 3 django django-class-based-views
我想将对象的特定字段分配给另一个context变量。对于基于函数的视图,这只是声明键:值对的问题:
context = {
'title': my_object.nick_name
}
Run Code Online (Sandbox Code Playgroud)
现在在我的模板中,我可以使用该变量{{ title }},它将显示对象的字段nick_name。
我如何使用基于类的视图实现同样的效果?
例如,我有这个简单的 DetailView:
class MyObjDetail(DetailView):
model = MyObject
def get_context_data(self, **kwargs):
context = super(MyObjectDetail, self).get_context_data(**kwargs)
context['title'] = ????? <--- right here
context['cancel'] = reverse_lazy('my_objs:my_objs_list')
return context
Run Code Online (Sandbox Code Playgroud)
我想将变量分配{{ title }}为使用nick_name此类基于视图显示的对象的字段。我该怎么做呢?
在 中DetailView,您将能够使用 访问该对象self.object。因此你应该这样做:
context['title'] = self.object.nick_name
Run Code Online (Sandbox Code Playgroud)
但是,您可能会发现通过模板中的对象访问昵称更容易:
{{ object.nickname }}
Run Code Online (Sandbox Code Playgroud)