В современной версии Java оператор instanceof быстрее как вызов простого метода. Это означает:
if(a instanceof AnyObject){
}
быстрее как:
if(a.getType() == XYZ){
}
Другая вещь состоит в том, если необходимо расположить каскадом много instanceof. Тогда переключатель, которые только звонят однажды getType () быстрее.
Я делаю все как обычные представления, которые обычно отображаются в браузере. Это включает в себя все ответы на запросы AJAX (подстраницы).
Когда я хочу сделать части сайта более динамичными, я использую jQuery для выполнения AJAX, или в данном случае AJAH и просто загружаю содержимое одного из div на подстранице в запрашивающую страницу.
Этот метод работает очень хорошо - подстраницы очень легко отлаживать, поскольку они являются обычными страницами, а jQuery упрощает вашу жизнь, используя их как часть AJA [ XH] ed page.
Я не могу придумать какой-либо стандартный способ вставить ajax в приложение Django, но вы можете взглянуть на это руководство .
Вы также можете найти более подробную информацию на странице django об Ajax
Две недели назад я написал , как я реализую подшаблоны, чтобы использовать их в "обычных" и "ajax" запросах (для Django это то же самое) . Может быть, это будет полезно для вас.
+1 Нику для страниц, нормально отображаемых в браузере. Это кажется лучшей отправной точкой.
Проблема с простейшими подходами AJAX, такими как Ник и Викингосегундо, заключается в том, что вам придется полагаться на свойство innerHTML
в вашем Javascript. Это единственный способ сбросить новый HTML-код, отправленный в JSON. Некоторые сочли бы это плохим.
К сожалению, я не знаю стандартного способа репликации отображения форм с использованием Javascript, который соответствует рендерингу Django. Мой подход (над которым я все еще работаю) заключается в создании подкласса класса Django Form
, чтобы он выводил биты Javascript вместе с HTML из as_p ()
и т. Д. Затем они воспроизводят формируют мои манипуляции с DOM.