Django 管理员添加视图弹出对话框
Django admin add view popup dialog box
如何在 Django 管理员的添加视图弹出框中传入额外的GET
参数?
基本上,我有一个外键的+
符号,当我单击它时,它会打开一个弹出框以添加该类型的新对象。
问题是我在弹出框中使用了一些自定义的 Ajax 代码,我需要找到一种方法来仅更新打开对话框的字段(假设可能有其他外键字段)。
我能想到的唯一解决方案是以某种方式传入一个GET
参数,以便我知道应该更新哪个字段。
有什么想法吗? 我只需要朝着正确的方向推动即可完成此操作
现在我正在做这样的事情来更新字段。 我想让这个动态
if ($('#id_avatar').length) {
$('#id_avatar', opener.document).append($('<option selected="selected"></option>').attr('value', data.obj_id).text(data.obj__unicode__));
}
我想我以某种方式重新加载原始页面中的选择框可能是一个选项,因为此时它已经保存在数据库中。
我最终覆盖了change_form.html
中的字段集。 不确定这是否是最好的方法,但它似乎对我有用。现在我可以传递一个source_field
来知道哪个字段称为弹出窗口,以便以后可以使用 Jquery 更新正确的字段
{% for fieldset in adminform %}
{# {% include "admin/includes/fieldset.html" %}#}
<fieldset class="module aligned {{ fieldset.classes }}">
{% if fieldset.name %}<h2>{{ fieldset.name }}</h2>{% endif %}
{% if fieldset.description %}
<div class="description">{{ fieldset.description|safe }}</div>
{% endif %}
{% for line in fieldset %}
<div class="form-row{% if line.fields|length_is:'1' and line.errors %} errors{% endif %}{% if not line.has_visible_field %} hidden{% endif %}{% for field in line %}{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% endfor %}">
{% if line.fields|length_is:'1' %}{{ line.errors }}{% endif %}
{% for field in line %}
<div{% if not line.fields|length_is:'1' %} class="field-box{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not field.is_readonly and field.errors %} errors{% endif %}{% if field.field.is_hidden %} hidden{% endif %}"{% elif field.is_checkbox %} class="checkbox-row"{% endif %}>
{% if not line.fields|length_is:'1' and not field.is_readonly %}{{ field.errors }}{% endif %}
{% if field.is_checkbox %}
{{ field.field }}{{ field.label_tag }}
{% else %}
{{ field.label_tag }}
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{% if field.field.name == 'avatar' %}
<select id="id_avatar" name="avatar">
<option value="" selected="selected">---------</option>
</select><a href="/admin/core/multimedia/add/?_to_field=id&source_field=avatar" class="add-another" id="add_id_avatar" onclick="return showAddAnotherPopup(this);"> <img src="/static/admin/img/icon_addlink.gif" width="10" height="10" alt="Add Another"></a>
{% else %}
{{ field.field }}
{% endif %}
{% endif %}
{% endif %}
{% if field.field.help_text %}
<p class="help">{{ field.field.help_text|safe }}</p>
{% endif %}
</div>
{% endfor %}
</div>
{% endfor %}
</fieldset>
{% endfor %}
相关文章:
- 将部分视图加载到JQuery对话框中的缓存问题
- ASP 网格视图在打开模式对话框时更改布局
- 显示具有 MVC 数据绑定视图模型 ASP.NET JQuery 对话框的最佳方式
- 在 jQuery 对话框中以分部视图提交表单后返回数据
- 使用 jQuery 从子视图关闭对话框,而无需在 MVC3 中重新加载父视图
- 来自网格视图行的 jQuery 确认对话框始终回发
- Django 管理员添加视图弹出对话框
- 使用AngularJS对话框模板的Pyramid视图
- 文本框开关,带有基于部分视图MVC 4的模式对话框上的单选按钮
- 列表视图点击事件只在jQuery Mobile中的对话框中第一次发生
- 通过在codeigniter中加载视图来打开引导模态对话框
- 当控制器与视图中的数据有问题时,MVC打开jquery对话框
- 在jquery ui对话框中加载骨干js视图iframe
- 如何打开一个弹出对话框在网格视图(另一个弹出)的超链接点击
- Jquery对话框——基于提交给Spring Controller的json,返回一个视图
- 关闭引导模式对话框后,视图页面被锁定/禁用
- 当单击分支视图中的按钮时,为表的每个元素显示一个对话框窗口
- 如何触发 JQuery 对话框以从 MVC 分部视图的控制器关闭
- 对话框中的MVC 3部分视图不工作
- 我该如何在打开一个SimpleModal对话框的BackBone.js视图中取消绑定事件?