我是Django的新手,并且正在努力解决一些动态解决方案 . 我正在尝试创建一个应用程序,用户可以从UI创建表并从平面文件将数据导入此表,然后用户可以通过单击URL浏览该数据(例如,如果用户为员工创建表,则用户应该能够为员工提供这样的URL:localhost / employee) . 我稍后会处理导入部分但是现在,我正在尝试找到一种浏览数据的解决方案 . 以下查询几乎是这样做的 . 但我无法使用别名而不是列名 . 有没有办法 Build 像这样的动态?
def employee(request):
entries = Employee.objects.annotate(First Name=F('FirstName')). only('FirstName','Email')
print(entries)
return render_to_response('employee.html',{'employees': serializers.serialize("json",entries, fields=('First Name','Email'))})
以上查询给我以下结果 . 我这里只有电子邮件信息 . 所以没有名字,因为注释不起作用 .
[{"model": "client.employee", "pk": 1, "fields": {"Email":"employe1@gmail.com"}}]
1 回答
根据this ticket,django不允许序列化非模型字段 . 所以,你需要覆盖serailizer,所以你可以尝试这样:
在单独的文件中编写自定义序列化程序(将覆盖原始json序列化程序),即 custom_serializer.py
在视图内部,导入CustomSerializer并使用它 . 例如