Python back-end, generate list list, pass the value to front-end js
users_select_5 = users_all.order_by("-id")[:5]
prepare_dic = locals()
user_list = []
for i, user_one in enumerate(users_select_5):
prepare_dic['user_' + str(i)] = {}
prepare_dic['user_' + str(i)].update({
"phone": user_one.phone_num,
"created_at": json.dumps(user_one.created_at, cls=DateEncoder),
"lasted_login": json.dumps(user_one.lasted_login, cls=DateEncoder),
"login_times": user_one.login_times,
})
user_list.append(
prepare_dic['user_' + str(i)],
)
Get the latest 5 user information, generate a dictionary, and embed it in the list.
The data content is as follows:
user_list [{'phone': '11111111', 'created_at': '"2020-03-08 00:05:00"', 'lasted_login': '"2020-03-08 00:05:00"', 'login_times': 1}, {'phone': '22222222', 'created_at': '"2020-03-06 19:55:19"', 'lasted_login': '"2020-03-06 19:55:19"', 'login_times': 1}, {'phone': '33333333', 'created_at': '"2020-03-05 11:58:40"', 'lasted_login': '"2020-03-05 11:58:40"', 'login_times': 1}, {'phone': '44444444', 'created_at': '"2020-03-04 22:13:10"', 'lasted_login': '"2020-03-04 22:13:10"', 'login_times': 1}, {'phone': '55555555', 'created_at': '"2020-03-04 21:23:16"', 'lasted_login': '"2020-03-04 21:23:16"', 'login_times': 1}]
The front end obtains the data through an ajax request. Use the following method to convert string type data into js objects
$.ajax({
async:false,
type:"POST",
dataType:"json",
url:"/odoo/dashboard/select/",
success:function(data){
if (data.status){
console.log(typeof(data.user_data))
console.log(data.user_data)
data = JSON.parse(data.user_data)
console.log(data)
The data is formatted as an object in js.