Javascript 如何在django中动态加载数据
在过去的几天里,我一直在学习django,我正在尝试构建一个非常简单的应用程序,它包含以下内容: models.pyJavascript 如何在django中动态加载数据,javascript,python,jquery,django,ajax,Javascript,Python,Jquery,Django,Ajax,在过去的几天里,我一直在学习django,我正在尝试构建一个非常简单的应用程序,它包含以下内容: models.py class Stock(models.Model): date = models.DateField() price = models.IntegerField() views.py def index(request): list_dates = Stock.objects.order_by('date').values_list('date', f
class Stock(models.Model):
date = models.DateField()
price = models.IntegerField()
views.py
def index(request):
list_dates = Stock.objects.order_by('date').values_list('date', flat = True).distinct()
my_dict = {'list_dates' : list_dates}
return render(request, 'stocks/index.html', context = my_dict)
index.html
<body>
<select name="date" id="date">
<option value="select">Select Data</option>
{% for date in list_dates %}
<option value="{{date}}">{{date}}</option>
{% endfor %}
</select>
<h1>{{price here}}</h1>
</body>
选择数据
{列表中的日期为%u日期%}
{{date}}
{%endfor%}
{{price here}}
这是最终概念的一个非常简化的版本,它将包含除价格之外的更多领域
我想做的是:
- 获取用户在选择标记上选择的日期
- 使用它访问django数据库,然后只加载与所选日期匹配的价格
- 将其插入h1标记中
- 当选择标记上的日期更改时刷新此选项
谢谢 首先,我建议您使用django表单,这将为您生成所有锅炉板html。关于您的问题,当您希望停留在同一页面(例如过滤、输入验证)时,提交请求的标准方法是使用ajax 我将在下面链接一些关于如何执行ajax请求的更详细的解释,但基本上可以分解为:
关键的一点是理解ajax是如何工作的,从视图中传递什么,以及如何传递。剩下的是一个简单的db查询,从您的示例代码中,您似乎知道如何执行该查询。如果您仍然有困难,在尝试之后,发布您的尝试,我将进一步帮助您。首先,我建议您使用django表单,这将为您生成所有锅炉板html。关于您的问题,当您希望停留在同一页面(例如过滤、输入验证)时,提交请求的标准方法是使用ajax 我将在下面链接一些关于如何执行ajax请求的更详细的解释,但基本上可以分解为: