Ленивая загрузка может быть настраиваемой, это означает, что вы настраиваете, нужно вам это или нет, в случае отложенной загрузки ваши данные будут выбраны, когда вы запрашиваете это, все данные не выбираются вручную в FindAll сразу.
Вот некоторый javascript (на основе JQuery) для изменения значений параметров элемента при изменении категории:
<script charset="utf-8" type="text/javascript">
$(function(){
$("select#id_category").change(function(){
$.getJSON("/items/",{id: $(this).val(), view: 'json'}, function(j) {
var options = '<option value="">-------- </option>';
for (var i = 0; i < j.length; i++) {
options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
}
$("#id_item").html(options);
$("#id_item option:first").attr('selected', 'selected');
})
$("#id_category").attr('selected', 'selected');
})
})
</script>
Вам необходимо вызвать представление для / items / URL, предоставляющего список JSON: действительные элементы.
Вы можете подключить это к своему администратору, используя модельные определения медиа администратора .
Вам понадобится какой-то не серверный механизм фильтрации объектов. Либо так, либо вы можете перезагрузить страницу, когда сделан выбор (что, скорее всего, будет сделано в JavaScript в любом случае).
В противном случае невозможно получить подмножество данных с сервера на клиент.