私は現在、Djangoテンプレートテンプレートタグを書いています。例えば、settings.MIDDLEWARE_CLASSES
のように、文字列を使ってそのクラスを参照できるようにしたいと考えています。タグは{% mytag "myproject.lib.mymodule.SomeClass" %}
のようになります。Pythonパス文字列をDjangoで解決するにはどうすればよいですか?
質問はかなり簡単です:私のテンプレートタグで、この文字列を実際に参照されているクラスに簡単に解決する方法はありますか?
ありがとうございました。
答えは "イエス" です。今。あなたが本当に知っているべきこと**を質問するために質問を編集してください。「クラス名をクラスオブジェクトに変換するにはどうすればいいですか?」それから、「なぜあなたはこれをやろうとしているのですか?」と聞くことができます。しばしば、あなたは他の技術でもっと幸せになるでしょう。引数として指定されたクラスオブジェクトでタグが何をするかを説明してください。 –
私は、これが何かをする最善の方法であるかどうかにかかわらず、これがどのように行われているかを見ることに興味があります。 –
ありがとう。質問は純粋に技術的なものであり、テンプレートタグではなく、多くの場所で役立つ可能性があります。しかし、興味がある人は、[FacebookのBigPipe](http://www.facebook.com/notes/facebook-engineering/bigpipe-pipelining-web-pages-for-high-performance/389414033919)のようなものを作成することが目標です)。タグは、Pageletクラスパスを引数として取り、それを遅延レンダリングに登録し、必要に応じて最後にプレースホルダを返します。 – Pierre