我想从定制模板添加一个链接,该链接进入Django管理员添加页面:
我认为最简单的方法是将添加页面打开到弹出窗口中,但是在保存模型之后,它会返回列表并且不关闭弹出窗口,也许有一个属性可以使这种情况发生?我尝试过_is_popup
,但是什么也没做。
我尝试的另一件事是弄乱名为submit_line.html
和admin_modify.py
templatetag的管理模板。
<a href="/admin/core/{{ indicator_key }}/add/?_is_popup=1" target="popup"
onclick="window.open('/admin/core/{{ key }}/add/?_is_popup=1',
'popup','width=600,height=800'); return false;"></a>
答案 0 :(得分:0)
在深入研究Django源代码后,我解决了:
template.html
<a href="#" target="popup"
onclick="window.open('/admin/<app>/<model>/add/?_popup=1&hospital={{ hospital.id }}',
'popup','width=600,height=800'); return false;"></a>
在这种情况下,它将作为弹出窗口打开,并自动为hospital
填充其ID。
template.js
function dismissChangeRelatedObjectPopup(window, value, obj, new_obj) {
window.close();
location.reload();
}
function dismissDeleteRelatedObjectPopup(window, value) {
window.close();
location.reload();
}
function dismissAddRelatedObjectPopup(window, value, obj) {
window.close();
location.reload();
}
根据您的需要添加了此javascript,这是在将模型保存到弹出窗口后发生的情况。就我而言,我仅使用添加功能,并且由于需要重新加载页面以更新某些图表,因此我使用了location.reload();