değişkenlerinden biri olmadan yeniden oluştur Bir GET isteğini işleyen bir Django görünümü var. Biri için hariç tüm değişkenleri içerecek şekilde sorgu dizesini yeniden oluşturmak istiyorum.Django - Bir sorgu dizesini
Başlangıçta liste anlama kullanıyordu:
>>> from django.http import QueryDict
>>> q = QueryDict('a=2&b=4&c=test') // <--- make believe this is request.GET
>>> z = QueryDict('').copy()
>>> z.update(dict([x for x in q.items() if x[0] != 'b']))
>>> z.urlencode()
Ama bu daha iyi bir çözüm olabilir inanıyoruz:
>>> from django.http import QueryDict
>>> q = QueryDict('a=2&b=4&c=test') // <--- make believe this is request.GET
>>> z = q.copy()
>>> del z['b']
>>> z.urlencode()
kimse daha iyi bir yaklaşım düşünebilir mi?
Yup @danny. Üzgünüm, 'del' bölümünü yanlış yazdım. Ama ben örneği daha açık tutmak için 'q' kullanıyorum. –
Hmm .. düzenlemenizden ne demek istiyorsunuz? Ben 'a' değişkenini kullanmıyorum. Ama yine de, bu sadece bir örnektir. –
Sadece birisi www.yourwebsite.com?a= yerine "www.yourwebsite.com" adresine giderse 'request.GET ['a']' öğesine erişmeye çalışıyorsanız KeyError’a dikkat etmeyi söylüyordum. 2 & b = 3' Ama sanırım bu konu sadece bir örnektir ve tüm görünümünüzü değil – danny