Làm cách nào để thêm lỗi vào đầu biểu mẫu sau khi tôi xóa dữ liệu? Tôi có một đối tượng cần thực hiện cuộc gọi REST tới ứng dụng bên ngoài (google maps) làm điều kiện lưu trước và điều này có thể không thành công, có nghĩa là tôi cần người dùng của mình sửa dữ liệu trong biểu mẫu. Vì vậy, tôi làm sạch các dữ liệu và sau đó cố gắng tiết kiệm và thêm vào các lỗi hình thức nếu tiết kiệm không hoạt động:thêm lỗi vào lỗi biểu mẫu Django .__ all__
if request.method == "POST":
#clean form data
try:
profile.save()
return HttpResponseRedirect(reverse("some_page", args=[some.args]))
except ValueError:
our_form.errors.__all__ = [u"error message goes here"]
return render_to_response(template_name, {"ourform": our_form,},
context_instance=RequestContext(request))
này thất bại trong việc trả lại văn bản sai sót trong đơn vị xét nghiệm của tôi (mà đang tìm kiếm nó trong {{form.non_field_errors}}), và sau đó khi tôi chạy nó thông qua trình gỡ lỗi, các lỗi đã không được thêm vào dict lỗi biểu mẫu khi chúng đạt đến dòng render_to_response, cũng như bất kỳ nơi nào khác trong cây our_form. Tại sao điều này không hiệu quả? Làm cách nào để thêm lỗi vào đầu biểu mẫu sau khi được xóa?
Thật không may nó phải có hệ thống hơn, bản cập nhật này có thể xảy ra khi các phần khác của hệ thống cố gắng thay đổi dữ liệu, vì vậy nó không chỉ là một hình thức. Nếu không, bạn nói đúng, biểu mẫu sẽ là lý tưởng. – hendrixski
Không phải lúc nào cũng sử dụng biểu mẫu được kế thừa để thực hiện xác thực không? –