Python 如何在django中获取表单的实例值?

Python 如何在django中获取表单的实例值?,python,django,Python,Django,我已经覆盖了一个细节视图,所以我可以使用render_字段渲染表单元素。但是,渲染时,它们不会显示保存的值。我无法在模板中设置值,因为我无法将{{}放在{%}语法中。如何访问和显示以前保存的模型实例值?(这些是我想保留为滑块的滑块,它们还有许多我想保持一致的数据属性,因此我不能只在模板中手动写入输入) 在views.py中: class MyDetailEditMixin(SingleObjectMixin): """ Hybrid mixin to edit a detail """ mode

我已经覆盖了一个细节视图,所以我可以使用render_字段渲染表单元素。但是,渲染时,它们不会显示保存的值。我无法在模板中设置值,因为我无法将{{}放在{%}语法中。如何访问和显示以前保存的模型实例值?(这些是我想保留为滑块的滑块,它们还有许多我想保持一致的数据属性,因此我不能只在模板中手动写入输入)

在views.py中:

class MyDetailEditMixin(SingleObjectMixin):
"""
Hybrid mixin to edit a detail
"""
model = MyModel
form_class = forms.MyForm
raise_execption = True
def get_context_data(self, **kwargs):
    """
    expose the form
    """
    kwargs.setdefault('form', forms.MyForm)
    return super(MyDetailEditMixin, self).get_context_data(**kwargs)


class MyDetailView(MyDetailEditMixin, DetailView):
    """
    Shows the details
    """

我觉得我需要以某种方式明确地提到这个实例?我不确定。输入使用其所有特定的数据属性正确呈现,只是没有设置值。

我尝试了许多不同的方法,但最终我放弃了mixin并使用get_form方法编辑了MyDetailView(在该方法中,我可以告诉它使用实例):


render_字段的值中填充了保存的实例值,它们所需的所有属性都在那里。

无论是谁否决了这个问题,您能解释一下原因吗?我可能问的问题不对,但我不知道什么是正确的问题。
DetailView
没有
get\u form
方法:。也许你想要,然后你可以
instance=self.get_form()。instance
我添加了一个,它可以工作。我不需要UpdateView,我只需要一种用预先填充的数据属性来呈现滑块的速记方法,我已经在表单中设置了这些属性(大约有12个属性,每个输入设置不同,因此用html重写它也很麻烦,这也意味着在两个地方有相同的信息意味着它可能会意外发散)。
class MyDetailView(DetailView):
"""
Shows the details
"""

form_class = forms.MyForm

def get_form(self):
    form = self.form_class(instance=self.object)
    return form

def get_context_data(self, **kwargs):
    context = super(MyDetailView, self).get_context_data(**kwargs)
    context.update({
        'form': self.form_class(instance=self.get_object()),
    })

    return context