Tôi muốn có một hình thức ràng buộc từ một đối tượng để sử dụng phương pháp is_valid. Lý do là vì tôi có một số dữ liệu cũ mà tôi muốn người dùng chỉnh sửa theo các quy tắc xác thực mới. Sau đó, tôi muốn sử dụng lại mã của các phương thức sạch trong biểu mẫu của tôi.Chuyển đổi một hình thức không ràng buộc thành một hình thức bị ràng buộc?
tôi đã kết thúc tuần tự trả lời của tôi:
from django.utils import simplejson
from django.core.serializers import serialize
(...)
fields_dict = simplejson.loads(serialize('json', [obj]))[0]['fields']
form = forms.MyForm(fields_dict)
if form.is_valid
này hoạt động nhưng nó không có vẻ rất Djangish. Ngoài ra, nó có vẻ như là một vấn đề phổ biến vì vậy tôi đang tìm kiếm một cách tốt hơn để làm điều này.
Theo tài liệu dịch dữ liệu từ không bị ràng buộc thành không liên kết, không có nghĩa là xảy ra: https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#the-save-method Tuy nhiên, đó sẽ là giải pháp dễ dàng nhất đối với tôi.
Hãy nói cho tôi nếu tôi đã làm đúng: Bạn có dữ liệu cũ ở đâu đó và vì điều này đã được cứu, các quy tắc xác nhận thay đổi. Bây giờ bạn muốn sử dụng một ModelForm để xác nhận lại dữ liệu cũ và hiển thị lỗi cho người dùng? – Martin
'obj' đến từ đâu? Điều này sẽ giúp xác định những gì đang xảy ra ở đây. –
Chính xác @Penthi. Tôi nghĩ rằng oogles đã cho tôi những gì tôi đang tìm kiếm. Cảm ơn –