[英]How I can insert my django model data in fields for edit a record
我想編輯我的產品,所有數據都已經在 django 模型中。 當我添加按選項中的“編輯”按鈕時,會打開一個新表單來編輯產品,但我不知道該向誰插入數據。 請給我指導我如何在字段中顯示我的數據有我的產品圖像
如果您在編輯按鈕數據顯示之前看到,那就是編輯表單,但我想要表單字段中的數據
視圖.py
class EditProduct(TemplateView):
template_name = 'stock/editproduct.html'
def get(self, request, product_id):
productedit = get_object_or_404(Product, pk=product_id)
form = EditProductForm()
args = {'form':form, 'productedit':productedit}
return render(request, self.template_name, args)
模板.html
{% extends 'base.html' %}
{% block content %}
<div>
<h4>Edit Product!</h4>
<hr/>
<form method="post" enctype="multipart/form-data" >
{% csrf_token %}
{{ form.as_p }}
<h4>{{productedit.pro_name}}</h4>
<p>{{productedit.companyName}}</p>
<p>{{productedit.Sale_Price}}</p>
<p>{{productedit.Quantity}}</p>
<button type="submit" class="btn btn-success" >Edit</button>
</form>
</div>
{% endblock %}
表單.py
class EditProductForm(forms.ModelForm):
class Meta:
model = Product
fields = ('companyName', 'pro_name', 'Purchase_Price', 'Sale_Price', 'Quantity', 'Picture' )
def __init__(self, *args, **kwargs):
super(EditProductForm, self).__init__(*args, **kwargs)
self.fields['companyName'].label = 'Company Name'
self.fields['pro_name'].label = 'Product Name'
self.fields['Purchase_Price'].label = 'Purchase Price'
self.fields['Sale_Price'].label = 'Sale Price'
你必須添加一個實例
視圖.py
def get(self, request, product_id):
productedit = get_object_or_404(Product, pk=product_id)
data=Product.objects.filter(id=product_id)
form = EditProductForm(instance=data)
args = {'form':form, 'productedit':productedit}
return render(request, self.template_name, args)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.