Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 上下文不会被新值覆盖_Python_Django - Fatal编程技术网

Python 上下文不会被新值覆盖

Python 上下文不会被新值覆盖,python,django,Python,Django,我尝试在细节视图中添加或覆盖一些上下文值。 但是结果没有显示在页面上,你知道这是怎么可能的吗 最新的django版本 id和金额是模型的一部分。 应覆盖金额并添加醉酒 class EntryDetailView(DetailView): context_object_name = 'entry' model = models.Entry template_name = 'web/entry_detail.html' def get_context_data(se

我尝试在细节视图中添加或覆盖一些上下文值。 但是结果没有显示在页面上,你知道这是怎么可能的吗

最新的django版本

id和金额是模型的一部分。 应覆盖金额并添加醉酒

class EntryDetailView(DetailView):
    context_object_name = 'entry'
    model = models.Entry
    template_name = 'web/entry_detail.html'

    def get_context_data(self,**kwargs):
        context = super().get_context_data(**kwargs)
        context['amount'] = "what shall we do with the drunken sailer"
        context['drunk'] = "so drunken"
        return context
该模板包含:

<div class="jumbotron">
id : {{ entry.id }} <br>
amount: {{ entry.amount }}<br>
drunk: {{ entry.drunk }}<br>
</div>
当我期待的时候

id : 1
amount: what shall we do with the drunken sailer
drunk: so drunken

您没有覆盖实体的键。
上下文
不包含项目
id
金额
醉酒
。它包含一个键
'entry'
,该键映射到提取的
条目
对象,并且具有属性
金额
醉酒

您可以覆盖这些属性,例如:

class EntryDetailView(DetailView):
    context_object_name = 'entry'
    model = models.Entry
    template_name = 'web/entry_detail.html'

    def get_context_data(self,**kwargs):
        context = super().get_context_data(**kwargs)
        entry = context['entry']
        entry.amount = 'what shall we do with the drunken sailer'
        entry.drunk = 'so drunken'
        return context
class EntryDetailView(DetailView):
上下文\对象\名称='entry'
model=models.Entry
模板名称='web/entry\u detail.html'
def获取上下文数据(自身,**kwargs):
context=super()。获取上下文数据(**kwargs)
entry=context['entry']
entry.amount='我们该怎么处理这个喝醉的水手'
entry.dured=‘醉得厉害’
返回上下文
但是,覆盖模型对象的属性通常不是一个好主意

使用旧上下文,可以将数据呈现为:

<div class="jumbotron">
id : {{ entry.id }} <br>
amount: {{ amount }}<br>
drunk: {{ drunk }}<br>
</div>

id:{{entry.id}}
金额:{{amount}}
醉汉:{{醉汉}}

您没有覆盖实体的键。
上下文
不包含项目
id
金额
醉酒
。它包含一个键
'entry'
,该键映射到提取的
条目
对象,并且具有属性
金额
醉酒

您可以覆盖这些属性,例如:

class EntryDetailView(DetailView):
    context_object_name = 'entry'
    model = models.Entry
    template_name = 'web/entry_detail.html'

    def get_context_data(self,**kwargs):
        context = super().get_context_data(**kwargs)
        entry = context['entry']
        entry.amount = 'what shall we do with the drunken sailer'
        entry.drunk = 'so drunken'
        return context
class EntryDetailView(DetailView):
上下文\对象\名称='entry'
model=models.Entry
模板名称='web/entry\u detail.html'
def获取上下文数据(自身,**kwargs):
context=super()。获取上下文数据(**kwargs)
entry=context['entry']
entry.amount='我们该怎么处理这个喝醉的水手'
entry.dured=‘醉得厉害’
返回上下文
但是,覆盖模型对象的属性通常不是一个好主意

使用旧上下文,可以将数据呈现为:

<div class="jumbotron">
id : {{ entry.id }} <br>
amount: {{ amount }}<br>
drunk: {{ drunk }}<br>
</div>

id:{{entry.id}}
金额:{{amount}}
醉汉:{{醉汉}}

这是真的,我在手册中被误导了,类似的东西在这里作为一个例子发布

这是真的,我在手册中被误导了,类似的东西在这里作为一个例子发布