장고 양식을 작성 중입니다.외래 키로 장고 양식에 대한 질문이 없음
내 모델은 고객에게 희망 목록이 있다는 것입니다. 고객은 많은 희망 목록 항목을 가질 수 있습니다. 고객보기에서 희망 목록 항목을 추가합니다. 내 문제는 내가 원하는 목록 양식을 렌더링 할 때 모든 고객에게 드롭 다운이 있다는 것입니다. t을 설정하여 드롭 다운을 제거했습니다. 하지만 이제는 편집 할 수없는 항목을 양식에 표시하려고합니다. 제출할 때 편집 할 수없는 값을 다시 전달하십시오.
내가 할 수 Wishlist.customer
에 false로 편집 가능한 설정 한 경우 :
세트 뷰에서이 값이 표시 목적으로 만 HTML로 전달할?
편집 할 수없는 wishlist.customer가 처리를 위해 양식 제출에 다시 전달 되었습니까?
--------- models.py ------------
class WishList(models.Model):
customer = models.ForeignKey(Customer, editable=False)
year = models.CharField(max_length=4, blank=True)
item = models.CharField(max_length=20, blank=True)
color = models.CharField(max_length=20, blank=True)
sold = models.BooleanField(default=False)
-------- forms.py - -----------
class WishListForm(forms.ModelForm):
class Meta:
model = WishList
fields = ['carType', 'year', 'make', 'model', 'miles', 'color', ]
-------- views.py -------------
@login_required
def newWishList(request, customer_id):
cust = Customer.objects.get(pk=customer_id)
return handlePopAdd(request, WishListForm, cust, 'wishList')
def handlePopAdd(request, addForm, customer, field):
if request.method == "POST":
form = addForm(request.POST)
if form.is_valid():
newObject = form.save()
else:
form = addForm()
# Here I want to set the customer and have it displayed, not editable
form.customer=customer
pageContext = {'form': form, 'field': field}
return render_to_response("popuptemplate.html", pageContext)