J'ai actuellement un UpdateView et un bouton pour éditer les données dans les champs, mais pour une raison quelconque, les données ne sont pas affichées lorsque je clique sur mon bouton d'édition. Il montre un tas de champs vides, sauf si je vais à la barre d'adresse et appuyez sur Entrée, demandant essentiellement la même page. Ensuite, toutes les données apparaissent.Les données Django sous forme ne s'affichent pas avec POST
ne fonctionne pas lorsque je clique sur Modifier, quand je travaille appuyez sur Entrée dans la barre d'adresse:
/inventory/update/7/
views.py
class ProductUpdate(UpdateView):
model = Product
fields = [
'manufacturer',
'part_number',
'description',
'vendor',
'upc',
'stock_quantity',
'unit_cost',
'sale_price',
]
urls.py
# /inventory/update/<pk>
url(r'update/(?P<pk>[0-9]+)/$', views.ProductUpdate.as_view(), name='product-update'),
index .html
<div class="col-sm-6">
<ul class="list-group">
{% for product in all_products %}
<li class="list-group-item">
<a href="{% url 'inventory:product_detail' product.id %}"><span style="font-size: 1.6em;">{{ product.manufacturer }}: {{ product.part_number }}</span></a>
<form action="{% url 'inventory:product-delete' product.id %}" method="post" style="display: inline">
{% csrf_token %}
<button type="submit" class="btn btn-danger btn-sm float-right" style="margin-left: 10px; margin-top: 4px;">Delete</button>
</form>
<form action="{% url 'inventory:product-update' product.id %}" method="post" style="display: inline">
{% csrf_token %}
<button type="submit" class="btn btn-warning btn-sm float-right" style="margin-top: 4px;">Edit</button>
</form>
</li>
{% endfor %}
</ul>
</div>
Si je change la méthode de formulaire de mise à jour à GET
au lieu de POST
alors cela fonctionne quand je clique sur le bouton, mais ma barre d'adresse apparaît comme ceci.
/inventory/update/7/?csrfmiddlewaretoken=34WWjKDIDsNpZdmEmef9cr3tCoCO0V7jO3uks5qXFzSVKu1uAklqUA3ihaGBGaRK
J'ai essayé également d'utiliser le {{ form.as_p }}
avec POST
mais qui n'a pas fait les données apparaissent non plus.
Saint muet je ne savais même pas! Cela fonctionne parfaitement et est la réponse à ma question! Je pensais que j'avais besoin d'utiliser un formulaire pour demander des données ... –