Witam,
Walczę z selectem, który nie chce pobrać danych z bazy danych mySQL. Bez oczekiwanego rezultatu.
Poniżej fragmenty kodu:
na stronie wyświetlania w HTML'u
<script type="text/javascript">
<!--
$(function () {
var rodzaj = $('#rodzajSzpilkiSelect');
var wymiary = $('#wymiarSzpilkiSelect');
var srednica = $('#srednicaRadelkaSelect');
var dlugosc = $('#dlugoscSzpilkiSelect');
srednica.selectChain({
target: dlugosc,
url: '/sklep/ajax/get_dlugosc_szpilki',
key: 'pk',
list: 'fields',
value: 'dlugosc',
type: 'post',
data: "ajax=true"
});
wymiary.selectChain({
target: srednica,
url: '/sklep/ajax/get_srednica_radelka',
key: 'pk',
list: 'fields',
value: 'srednica',
type: 'post',
data: "ajax=true"
});
rodzaj.selectChain({
target: wymiary,
url: '/sklep/ajax/get_wymiar_szpilki',
key: 'pk',
list: 'fields',
value: 'wymiary',
type: 'post',
data: "ajax=true"
});
go2.click(function () {
rodzaj.get(0).disabled = true;
rodzaj.get(0).options[0].selected = true;
wymiary.get(0).disabled = true;
srednica.get(0).disabled = true;
dlugosc.get(0).disabled = true;
marka.get(0).disabled = false;
if(marka.get(0).value!=''){model.get(0).disabled = false;
if(model.get(0).value!=''){felga.get(0).disabled = false;
}
}
}
});
$("img.let", $(".products_list")).each(function() {
var letimg = '<img src="/site_media/images/lupa.png" style="position: absolute; top: 100%; left: 100%; margin-top: -' + Math.ceil(20) + 'px; margin-left: -' + Math.ceil(18) + 'px;" />';
var wrapper = $('<span style="position: relative; display: inline-block;"></span>');
$(this).wrap(wrapper).after(letimg);
});
});
//-->
</script>
w silniku w pliku ajax.py:
def get_dlugosc_szpilki(request):
srednica_radelka = None
if request.is_ajax():
if request.POST.has_key('sredniceRadelek'):
srednica_radelka = request.POST['sredniceRadelek']
else:
srednica_radelka = request.GET['sredniceRadelek']
try:
nice = Szpilka.objects.filter(srednica_radelka__id=srednica_radelka).values_list('dlugosc', flat=True).distinct()
except:
nice = []
if request.is_ajax():
data = serializers.serialize("json", DlugoscSzpilki.objects.filter(pk__in=nice))
return HttpResponse(data, mimetype="application/javascript")
else:
return DlugoscSzpilki.objects.filter(pk__in=nice)
return None
def get_wymiar_szpilki(request):
rodzaj_szpilki = None
if request.is_ajax():
if request.POST.has_key('rodzaje'):
rodzaj_szpilki = request.POST['rodzaje']
else:
rodzaj_szpilki = request.GET['rodzaje']
try:
nice = Szpilka.objects.filter(rodzaj_szpilki__id=rodzaj_szpilki).values_list('wymiar', flat=True).distinct()
except:
nice = []
if request.is_ajax():
data = serializers.serialize("json", WymiarSzpilki.objects.filter(pk__in=nice))
return HttpResponse(data, mimetype="application/javascript")
else:
return WymiarSzpilki.objects.filter(pk__in=nice)
return None
w silniku w pliku views.py
if slug == "szpilki":
if request.GET.has_key('rodzaje') and request.GET['rodzaje']:
products = products.filter(szpilka__rodzaj_szpilki=request.GET['rodzaje'])
if request.GET.has_key('wymiary') and request.GET['wymiary']:
products = products.filter(szpilka__wymiar_szpilki=request.GET['wymiary'])
if request.GET.has_key('sredniceRadelek') and request.GET['sredniceRadelek']:
products = products.filter(szpilka__srednica_radelka=request.GET['sredniceRadelek'])
w silniku w pliku urls.py
url(r'ajax/get_wymiar_szpilki$', 'catalog.ajax.get_wymiar_szpilki', name='get_wymiar_szpilki'),
url(r'ajax/get_srednica_radelka$', 'catalog.ajax.get_srednica_radelka', name='get_srednica_radelka'),
url(r'ajax/get_dlugosc_szpilki$', 'catalog.ajax.get_dlugosc_szpilki',name='get_dlugosc_szpilki'),
Jeżeli, ktoś ma chwile i mógłbym prosić o pomoc, będe wdzięczny.
Pozdrawiam
Sebastian
604 453 878