une autre question django. J'ai un formulaire d'édition comme celui-ci. Regardez current_status dans le code.Django: enregistrement dans le champ du modèle
Il a été mis à jour:
def edit_item(request, client_id = 0, item_id = 0):
client = None
item = None
status = None
contact = None
status_id = request.POST.get('status_id', None)
contact_id = request.POST.get('contact_id', None)
save_item = request.POST.get('save_item', None)
save_status = request.POST.get('save_status', None)
try:
client = models.Client.objects.get(pk = client_id)
item = models.StorageItem.objects.get(pk = item_id)
except:
return HttpResponseNotFound()
try:
status = models.Status.objects.get(pk = status_id)
contact = models.Contact.objects.get(pk = contact_id)
except:
pass
if request.method == 'POST':
form = forms.ItemForm(request.POST, instance = item)
if form.is_valid() and save_item is not None:
form.save(True)
request.user.message_set.create(message = "Item {0} has been updated successfully.".format(item.tiptop_id))
return HttpResponse("<script language=\"javascript\" type=\"text/javascript\">window.opener.location = window.opener.location; window.close();</script>")
if status is not None and contact is not None and save_status is not None:
current_status = models.ItemStatusHistory(item = item, contact = contact, status = status,
user = request.user)
item.current_item_status_date = date.today()
item.save()
current_status.save()
request.user.message_set.create(message = "Item status has been updated successfully.")
else:
form = forms.ItemForm(instance = item)
title = str(client) + ' : Edit Item'
status_list = models.Status.objects.all()
return render_to_response('edit_item.html', {'form':form, 'title':title, 'status_list':status_list, 'item':item}, context_instance = RequestContext(request))
current_status
sauver est la dernière date de lorsque le formulaire est édité. Ce que je veux aussi faire est de sauvegarder cette valeur dans ce champ de modèles.
class StorageItem(models.Model):
current_item_status_date = models.DateField()
Désolé, mais je pense que votre question est vraiment pas compréhensible dans toute sorte :-) Pourriez-vous faire tomber la question d'une autre manière, l'extraction du code de votre premier bloc qui ne sont pas pertinents à la question, etc. –
@Gregor Corrigé. – Shehzad009