作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 html 页面,其中包含 Django 数据库中的动态图像。我还在同一页面中设置了一个模式为不可见,并在单击图像时打开。
我的意图是,当我单击任何图像时,它应该打开一个包含单击图像的 html 模型及其来自数据库的描述文本。
如何显示当前点击图像的数据及其描述。我尝试传递 {{profile.image.url}}
但这提供了有关单击所有图像的一个信息。
我不必为此提供示例代码。
最佳答案
您可以通过使用 AJAX 请求传递要检索的对象的 id 来实现此目的。
假设这是您的 HTML 表格
<table class="table">
<thead>
<tr>
<th>Id</th>
<th>Title</th>
<th>Date</th>
<th>Status</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
{% for incident in page_obj %}
<tr>
<td>{{ incident.id }}</td>
<td>{{ incident.title }}</td>
<td>{{ incident.created }}</td>
<td>
<span class="badge badge-pill badge-success">{{ incident.get_status_display }}</span>
</td>
<td>
<button class="btn btn-sm btn-outline-info" onclick="populateForm('{{ incident.id }}')" data-toggle="modal" data-target="#incidentModal">Edit</button>
</td>
</tr>
{% endfor %}
</tbody>
</table>
根据您的模型和字段使用此类函数
function populateForm(id) {
$.ajax({
url: "{% url 'incidents:update' 1 %}".replace("1", id),
type: "GET",
success(response) {
let incident = JSON.parse(response)[0].fields;
$("#id_title").val(incident.title);
$("#id_description").val(incident.description);
$("#id_responder").val(incident.responder);
$("#id_status").val(incident.status);
$("#id_functional_impact").val(incident.functional_impact);
$("#id_information_impact").val(incident.information_impact);
$("#id_recovery_impact").val(incident.recovery_impact);
},
});
}
View .py
from django.core import serializers
from django.http import JsonResponse, Http404
from django.views.generic import UpdateView
from incidents.models import Incident
from incidents.forms import IncidentForm
class IncidentUpdateView(UpdateView):
form_class = IncidentForm
model = Incident
def get_success_url(self):
return reverse('incidents:list')
def get(self, request, pk):
if request.is_ajax():
incident = get_object_or_404(Incident, pk=pk)
response = serializers.serialize("json", [incident])
return JsonResponse(response, safe=False)
raise Http404('Page not found')
关于python - 在Django中的html模式中加载动态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65374111/
我正在开发一个需要能够平均三个数字的 Facebook 应用程序。但是,它总是返回 0 作为答案。这是我的代码: $y = 100; $n = 250; $m = 300; $number = ($y
我只是无法弄清楚这一点,也找不到任何对我来说有意义的类似问题。我的问题:我从数据库中提取记录,并在我的网页上以每个面板 12 条的倍数显示它们。因此,我需要知道有多少个面板可以使用 JavaScrip
我是一名优秀的程序员,十分优秀!