Tôi có biểu mẫu nhập dữ liệu vào db. Tôi có một biểu mẫu khác có trường thả xuống sử dụng dữ liệu được nhập bởi biểu mẫu đầu tiên.Dữ liệu tải lại biểu mẫu Django
Vì vậy, khi tôi gửi dữ liệu từ biểu mẫu đầu tiên, db được cập nhật đúng. Nhưng khi tôi tải biểu mẫu thứ hai, trình đơn thả xuống không được cập nhật với dữ liệu mới nhất.
bước sau để gỡ lỗi
Vấn đề không phải là với giao dịch/cam, vv Các truy vấn để lấy dữ liệu cho danh sách thả xuống ở dạng thứ hai là đúng.
Vấn đề không phải là có tầm nhìn bộ nhớ cache hoặc (cos chúng tôi không có bất kỳ trung gian bộ nhớ cache) Tôi cũng đã thử trang trí bộ nhớ cache như @ never_cahce, @ cache_control vv
tôi đã cố gắng đưa ra một tuyên bố in ở dạng thứ hai . Tôi tin rằng vấn đề là với bộ nhớ cache biểu mẫu. Mọi biểu mẫu django chỉ được tải một lần, tức là. trong khi tải trang đầu tiên của trang web. Sau đó biểu mẫu được tải từ bộ nhớ cache này.
Trang đầu
dạng
class AddOrganization(forms.Form):
orgList = getOrgUnitList()
orgUnit = forms.CharField(label=u'Organization Name',
max_length=50,
error_messages={'required':'Organization name is required field.'})
parentOrg= forms.ChoiceField(label=u'Parent Organization',
choices=[(u'Select',u'Select')]+orgList,
error_messages={'required':'Organization name is required field.'})
trang Second
dạng
class AddUser(forms.Form):
orgUnitList = getOrgUnitList()
email = forms.EmailField(label=u'Email',
max_length=50,
error_messages={'required':'Email is required field'})
orgUnit = forms.ChoiceField(label=u'Organizational Unit',
choices=orgUnitList,
error_messages={'required':'Organizational unit is required field'})
Query
def getOrgUnitList():
orgUnitList = list(OrganizationUnit.objects.values_list('OrgUnitID','OrgUnitName').order_by('OrgUnitName'))
return orgUnitList
EDIT
Mọi thứ đều tốt nếu tôi sử dụng modelforms.Why Thì sao?
Bạn có thể cho chúng tôi thấy một số mẫu mã không. N.B. Bạn sẽ phải tải lại/lấy dữ liệu từ db từ biểu mẫu đầu tiên mà bạn cần hiển thị trong menu thả xuống của biểu mẫu thứ hai của bạn. – c4urself
Chúng tôi chỉ là những người chết - vui lòng cung cấp mã thực hoặc nếu không, chúng tôi chỉ đang phỏng đoán vấn đề. Truy vấn này chính xác ở đâu? Bạn có tích cực nó đang được thực hiện? Ngay cả khi bạn tích cực, hãy cho chúng tôi xem! –