首先,对此的任何帮助都将是惊人的!我目前正在尝试学习 Django,并且对 Python 也很陌生。我正在尝试创建一个简单的项目管理 Web 服务,该服务可以使用 JSON 与另一个应用程序进行通信。它需要做的就是:
- 列出所有项目的清单。
- 列出每个项目的所有任务。
- 允许用户提交项目和任务的时间。
对于模型,我目前有一个“项目”模型和“任务”模型。我已经用一些虚拟信息填充了数据库。我的项目模型有变量 id、name 和 description。任务只有项目,task_name。
我对上述任务 1 的看法是
def api(request):
projects = Project.objects.all()#.order_by('id')
projects = serializers.serialize('json', projects, indent=2)
return HttpResponse(projects, mimetype='application/json')
关联的 url 是 url(r'^api/project/$', 'project.views.api'),
但是,这会在键入时输出以下文本
http://127.0.0.1:8000/api/project/
进入浏览器。有没有更好的方法来测试 JSON 输出?我宁愿它只输出'id'和'name'。由于某种原因,id 甚至没有显示。这就是我在模型 id = models.AutoField(primary_key=True) 中为 id 输入的内容。它在交互式外壳中工作。
[
{
"pk": 1,
"model": "project.project",
"fields": {
"name": "Project One",
"description": "This is the description for project one"
}
},
{
"pk": 2,
"model": "project.project",
"fields": {
"name": "Project Two",
"description": "This is Project Two"
}
}
]
我通过例子学习,所以如果有人能告诉我应该如何做到这一点,我将非常感激!
顺便说一下输出任务列表,我认为 url 应该是这样的:
http://127.0.0.1:8000/api/project/?project_name
但我不确定如何在视图中处理它。