Все в мире Django, кажется, ненавидят threadlocals (http://code.djangoproject.com/ticket/4280, http://code.djangoproject.com/wiki/CookBookThreadlocalsAndUser). Я прочитал эссе Армина об этом (http://lucumr.pocoo.org/2006/7/10/why-i-cant-stand-threadlocal-and-others), но большая часть его зависит от threadlocals, потому что он неэлегантен.Что так плохо с threadlocals
У меня есть сценарий, где theadlocals значительно упростит ситуацию. (У меня есть приложение, в котором у людей будут поддомены, поэтому все модели должны иметь доступ к текущему субдомену, а их передача из запросов не стоит того, если единственная проблема с threadlocals заключается в том, что они неэлегантные или делают для хрупких код.)
Также много фреймворков Java, похоже, многократно использует threadlocals, так как их случай отличается от Python/Django?
Попробовав реализовать поддомен мульти-аренду квартиры без threadlocals, я могу полностью сочувствовать , После некоторых серьезных разочарований, threadlocals действительно оказался единственным способом. Я читал аргументы против них, и они были недостаточно сильными. Я считаю, что отказ от использования threadlocals является одной из основных причин того, что структура сайтов настолько бесполезна для некоторых сценариев. Будет интересно, если они когда-либо выяснят, как законно разрешить https://code.djangoproject.com/ticket/15089 таким образом, который можно адаптировать к типу многопользовательской аренды, которую вы и я используем, без них. –
Ссылка на Django Cookbook не работает. Ссылка на эссе также сломана ([возможная замена] (http://www.memonic.com/user/pneff/folder/python/id/1Wg)). –