標準モデルフォームのスラッグフィールドに、django の管理サイトで事前入力されたフィールドを使用するのと同じ結果を得る方法はありますか?
4055 次
2 に答える
10
djangoはオープンソースなので、特定の動作を再現したい場合は、コードを読んで、好きなものを選んで選択できます。たとえば、contrib.adminがurlify.jsというスクリプトを使用して動的なスラッギングを実行し、次のように使用していることがわかります。
<script type="text/javascript" src="/admin-media/js/urlify.js"></script>
<script type="text/javascript">
document.getElementById("id_title").onkeyup = function() {
var e = document.getElementById("id_slug");
if (!e._changed) { e.value = URLify(document.getElementById("id_title").value, 50); }
}
</script>
...もちろん、管理メディアの提供元によって異なります(私の場合は「/ admin-media /」からです)
または、ビューでslugifyingを実行することに満足している場合は、django.templateで使用されている関数django.template.defaultfilters.slugifyをslugifyフィルターとして使用できます。
于 2009-09-07T12:56:54.380 に答える
-1
<script type="text/javascript" src="/media/js/urlify.js"></script>
var slug = document.getElementById("id_slug").value;
document.getElementById("id_name").onkeyup = function() {
if (slug == '') {
document.getElementById("id_slug").value = URLify(document.getElementById("id_name").value, 50);
}
}
于 2012-02-03T14:42:36.450 に答える