В Django 1.9 есть новый поиск полей __date, который вы можете использовать:
Entry.objects.filter (pub_date__date = datetime.date (2005, 1, 1)) Entry.objects.filter (pub_date__date__gt = datetime.date (2005, 1, 1))
Поскольку вы используете asp.net, имеет смысл выполнить проверку на стороне сервера, поскольку именно там вы решите добавить ссылку на файл javascript. В вашем файле .ascx вы можете зарегистрироваться следующим образом:
this.Page.ClientScript.RegisterClientScriptInclude("GlobalUnqiueKey", UrlOfJavascriptFile);
... со своей страницы вы просто вызываете объект ClientScript напрямую:
ClientScript.RegisterClientScriptInclude("GlobalUnqiueKey", UrlOfJavascriptFile);
'GlobalUniqueKey' может быть любой строкой (я использую URL-адрес файла javascript для это тоже)
Если вы попытаетесь зарегистрировать сценарий с той же ключевой строкой, он ничего не сделает. Поэтому, если вы вызовете это на своей странице, в своем элементе управления или где-нибудь еще, у вас будет только одна ссылка на своей странице. Преимущество этого состоит в том, что у вас может быть несколько экземпляров элемента управления на странице, и даже если все они пытаются зарегистрировать один и тот же сценарий, это всегда выполняется максимум один раз. И никому из них не нужно беспокоиться о том, что скрипт уже зарегистрирован.
Существует метод IsClientScriptIncludeRegistered (stringkey), который вы можете использовать, чтобы узнать, был ли скрипт уже включен под этот ключ, но это кажется довольно избыточным. эта проверка перед регистрацией, поскольку несколько попыток регистрации не вызывают исключений или других ошибок.
Выполнение проверки на стороне клиента означает, что, предполагая, что несколько ссылок javascript кэшируются браузером (они могут не быть), вы все равно иметь несколько тегов и заголовок каждого из них, вызывающий запуск некоторого javascript. Если бы у вас было 20 экземпляров вашего элемента управления на странице, у вас могли бы возникнуть серьезные проблемы.
метод, который вы можете использовать, чтобы увидеть, был ли сценарий уже включен под этот ключ, но кажется довольно избыточным выполнять эту проверку перед регистрацией, поскольку несколько попыток регистрации не вызывают исключений и не вызывают каких-либо других ошибок.Выполнение проверки клиента -side означает, что, предполагая, что несколько ссылок javascript кешируются браузером (они могут не быть), у вас все еще есть несколько тегов и заголовок каждого из них, вызывающий запуск некоторого javascript. Если бы у вас было 20 экземпляров вашего элемента управления на странице, у вас могли бы возникнуть серьезные проблемы.
метод, который вы можете использовать, чтобы увидеть, был ли сценарий уже включен под этот ключ, но кажется довольно избыточным выполнять эту проверку перед регистрацией, поскольку несколько попыток регистрации не вызывают исключений и не вызывают каких-либо других ошибок.Выполнение проверки клиента -side означает, что, предполагая, что несколько ссылок javascript кешируются браузером (они могут не быть), у вас все еще есть несколько тегов и заголовок каждого из них, вызывающий запуск некоторого javascript. Если бы у вас было 20 экземпляров вашего элемента управления на странице, у вас могли бы возникнуть серьезные проблемы.
у вас все еще есть несколько тегов и заголовок каждого из них, вызывающий запуск некоторого javascript. Если бы у вас было 20 экземпляров вашего элемента управления на странице, у вас могли бы возникнуть серьезные проблемы. у вас все еще есть несколько тегов и заголовок каждого из них, вызывающий запуск некоторого javascript. Если бы у вас было 20 экземпляров вашего элемента управления на странице, у вас могли бы возникнуть серьезные проблемы.На стороне клиента можно сделать одно из двух ...
Вот быстрая функция JS, которая использует JQuery для выполнения того, что вам нужно:
function requireOnce(url) {
if (!$("script[src='" + url + "']").length) {
$('head').append("<script type='text/javascript' src='" + url + "'></script>");
}
}
используйте что-то вроде следующего:
if(typeof myObjectOrFunctionDecalredInThisScript != 'undefined') {
// code goes here
var myObjectOrFunctionDecalredInThisScript = { };
}
Это проверяет, существует ли ваш объект или функция уже, и таким образом предотвращает повторное объявление.