django user数据库表(包含id,username)中绑定外键给accout用户认证表(包含id,time,user_id),如何通过一个函数查询所有用户的数据,将俩个表数据进行匹配和拼接
时间: 2024-04-10 21:34:10 浏览: 152
django有外键关系的两张表如何相互查找
要通过一个函数查询用户数据表和用户认证表,并将它们进行匹配和拼接,可以使用 Django 的 ORM 查询和关联操作。下面是一个示例代码,展示了如何查询并拼接用户数据后返回一个包含用户信息的列表:
```python
from django.contrib.auth.models import User
from your_app.models import Account
def get_user_info():
user_info_list = []
# 查询用户数据表
users = User.objects.all()
for user in users:
# 查询用户认证表中对应的记录
account = Account.objects.get(user_id=user.id)
# 构建用户信息字典
user_info = {
'username': user.username,
'email': user.email,
'last_login': user.last_login,
'time': account.time
# 其他字段...
}
# 将用户信息添加到列表
user_info_list.append(user_info)
return user_info_list
```
在视图函数或视图类中调用上述函数,将返回的用户信息列表传递给前端模板或 API 接口。
请注意,上述示例假设您已经创建了名为 "Account" 的模型,并将其与用户数据表建立了外键关联。您需要根据自己的模型定义和数据库结构来修改查询代码。确保在模型中正确定义了外键关系和字段名称。
阅读全文